[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Working gcc version to compile GNUstep
From: |
Stéphane Goujet |
Subject: |
Re: Working gcc version to compile GNUstep |
Date: |
Tue, 22 Feb 2005 18:17:16 +0200 |
User-agent: |
Mozilla Thunderbird 1.0 (Windows/20041206) |
Quentin Mathé a écrit :
and with the last 4.0.0 version I
tried, there is another problem already in the configure step (because
gcc-4.0.0 can't link properly an Objective-C program that has a .c
extension).
… otherwise why not replace the .c extension by .m ?
It's the configure script (of gnustep-base) which constructs a file
named (I believe) conftest.c in which is included the Objective-C file
config/config.objc.m .
I described the problem on gcc-help mailing list but got no answer.
I can reproduce the text of my messages here :
------------------------------------------------------------- 1 ------
Let's name an Objective-C program main.m :
> gcc main.m -lobjc
...works fine.
If we name the very same program main.c :
> gcc -x objective-c main.c -lobjc
...gives :
/usr/local/lib/gcc/powerpc-unknown-linux-gnu/4.0.0/../../../../powerpc-unknown-linux-gnu/bin/ld:
a.out: hidden symbol `_Unwind_GetIP' in
/usr/local/lib/gcc/powerpc-unknown-linux-gnu/4.0.0/libgcc_eh.a(unwind-dw2.o)
is referenced by DSO
collect2: ld returned 1 exit status
Then if I take the same main.m and process it in 2 steps :
> gcc -c main.m
...works fine
> gcc main.o -lobjc
...gives the same error message
Af far as I can tell, those problems did not show up with gcc-3.4.x .
If you have any idea about the problem and/or the solution...
NB: gcc is 4.0.0 20050213
computer is an Apple powerpc running Linux 2.4.16
NB2: the computer on which I ran the tests is not the same as this one I
use to write this e-mail, so I typed the error message with my little
fingers, which means there can/will be copying errors.
NB3: I have a very small example program if you ask for it, and please
ask for any piece of information that you think would be useful.
----------------------------------------------------------------------
------------------------------------------------------------- 2 ------
With gcc -v, I can see :
> Let's name an Objective-C program main.m :
> > gcc main.m -lobjc
> ...works fine.
collect2 is called with libraries : -lobjc -lgcc_s -lgcc -lc
> If we name the very same program main.c :
> > gcc -x objective-c main.c -lobjc
collect2 is called with libraries : -lobjc -lgcc_eh -lgcc -lc
So, if I add now this libgcc_s :
>gcc -x objective-c main.c -lobjc -lgcc_s
... works fine !
What are those libraries (libgcc_s, libgcc_eh) ?
Why does gcc try to link with different libraries just because the
file extension is different ?
Why does now (4.0.0) libgcc_eh depend on libgcc_s ? (This is not the
case with a gcc-3.4.x).
----------------------------------------------------------------------
Goodbye,
Stéphane Goujet.
- Working gcc version to compile GNUstep, Stéphane Goujet, 2005/02/22
- Re: Working gcc version to compile GNUstep, Richard Frith-Macdonald, 2005/02/22
- Re: Working gcc version to compile GNUstep, Richard Frith-Macdonald, 2005/02/22
- Re: Working gcc version to compile GNUstep, Quentin Mathé, 2005/02/22
- Re: Working gcc version to compile GNUstep,
Stéphane Goujet <=
- Re: Working gcc version to compile GNUstep, Lars Sonchocky-Helldorf, 2005/02/22
- Re: Working gcc version to compile GNUstep, Andrew Pinski, 2005/02/22
- Re: Working gcc version to compile GNUstep, Stéphane Goujet, 2005/02/23
- Re: Working gcc version to compile GNUstep, Andrew Pinski, 2005/02/23
- GNUStep Over Network, Brent Fulgham, 2005/02/23
- Re: GNUStep Over Network, Gürkan Sengün, 2005/02/23
- Re: GNUStep Over Network, Brent Fulgham, 2005/02/24