[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Problem building gnustep-base
From: |
Dennis Leeuw |
Subject: |
Re: Problem building gnustep-base |
Date: |
Fri, 01 Mar 2002 09:43:00 +0100 |
Hi all,
I am still stuck with building GNUstep base and gcc 3.0.4
Maybe someone can shed some light on the following:
>From the configure script I copied and created conftest.c:
#include "confdefs.h"
#include "/usr/src/SPM/gnustep/core/base/config/config.objc.m"
Then I ran:
/usr/GNUstep/bin/gcc -o conftest -g -O2 -fgnu-runtime
-I/usr/GNUstep/System/Headers -x objective-c
-L/usr/GNUstep/System/Libraries/ix86/linux-gnu/gnu-gnu-gnu
-L/usr/GNUstep/System/Libraries/ix86/linux-gnu
conftest.c -lobjc
The output shows:
In file included from conftest.c:2:
/usr/src/SPM/gnustep/core/base/config/config.objc.m:5: warning: incomplete
implementation of class
`NXConstantString'
/usr/src/SPM/gnustep/core/base/config/config.objc.m:5: warning: method
definition for `-length' not found
/usr/src/SPM/gnustep/core/base/config/config.objc.m:5: warning: method
definition for `-cString' not found
Then I ran ./conftest which results in:
./conftest: error in loading shared libraries:
/usr/GNUstep/lib/gcc-lib/i686-pc-linux-gnu/3.0.4/libobjc.so.1: undefined
symbol: __dso_handle
And I don't have the slightest idea what I should be looking for next.
For those curious I build gcc 3.0.4 with the following options:
--prefix=/usr/GNUstep --enable-shared --enable-threads=pthreads
--enable-languages=c,objc
--enable-version-specific-runtime-libs
Then I build ffcall, gmp and libxml2-2.4.15 which all went fine. So my idea is
that it is within the objc
part.
Could someone help me out, point me in the right direction...
Like what is __dso_handle???
Thanks,
Dennis Leeuw
Nicola Pero wrote:
> Ok - sorry - my fault - I didn't read enough carefully :-) - let me know
> if you find out what the problem is
>
> > The strange thing is that I am totaly confused by what is happening.
> > I just installed gcc-3.0.4 in /usr/GNUstep and added
> > /usr/GNUstep/lib/gcc-lib/i686-pc-linux-gnu/3.0.4
> > /usr/GNUstep/lib
> > to my ld.so.conf and ran ldconfig
> >
> > I set the environment var CC to /usr/GNUstep/bin/gcc, these are to me
> > always the standard things I do
> > when upgrading a compiler. The only thing that is different is the fact
> > that I use Debian now and I
> > used to use Slackware.
> >
> > And added to the beginning of PATH /usr/GNUstep/bin.
> >
> > On the commandline the function reveals the correct libobjc.so:
> > maggy:/usr/src/SPM/gnustep/core/make#$CC -print-file-name=libobjc.so
> > /usr/GNUstep/lib/gcc-lib/i686-pc-linux-gnu/3.0.4/libobjc.so
> >
> >
> > > > >
> > > > > gcc_shared_libobjc=`gcc -print-file-name=libobjc.so`
> > > > > if test -f "$gcc_shared_libobjc"; then
> > > > > gs_cv_objc_libdir=`dirname $gcc_shared_libobjc`
> > > > > fi
> > >
> > > I don't understand how/why this is supposed to work.
> >
> > This was an already available function and the -print-file-name option just
> > returns the entire path to
> > the libobjc.so file, which is quite handy if everything else fails ;)
>
> Ok - my point was that if you have modified /etc/ld.so.conf, the linker
> should be finding libobjc.so without any help, so uncommenting those lines
> would change nothing.
>
>
> > > gcc_shared_libobjc=`$CC -print-file-name=libobjc.so`
> > >
> > > otherwise you're using the default gcc shared libobjc, but compiling with
> > > the newer compiler.
> >
> > With the above mentioned changes to PATH, CC and ld.so.conf I disagree.
>
> Yes - you are right in this case
>
> > So I don't think I did anything wrong, but still with the default
> > configure script I get:
> > <snip>
> > checking for shared objc library... NONE
> > <snip again>
> > checking whether objc has thread support... no
> > checking if the compiler supports autodependencies... yes: gcc major
> > version is 3
> > </snip again>
> > </snip>
> >
> > With:
> > gcc_shared_libobjc=`gcc -print-file-name=libobjc.so`
> > I atleast get:
> > checking for shared objc library...
> > /usr/GNUstep/lib/gcc-lib/i686-pc-linux-gnu/3.0.4/libobjc.so
> > Which seems correct to me
>
> it shouldn't make any difference, the shared objc library was found
> anyway.
- Re: Problem building gnustep-base,
Dennis Leeuw <=