This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: i686 to c3-2 crosstool build fails on setjmp


Dan Kegel wrote:
Simon Poole wrote:
The failure looks like this:

../sysdeps/i386/elf/setjmp.S: Assembler messages:
../sysdeps/i386/elf/setjmp.S:63: Error: junk at end of line, first unrecognized character is `1'


That looks a lot like you've run into a preprocessor symbol clash.
Line 63 of setjmp.S (in my copy, anyway) is

        .section .gnu.linkonce.t.__i686.get_pc_thunk.cx,"ax",@progbits
and you can easily imagine __i686 being defined to 1!

> What I do in these cases is copy the crucial lines from the build
> log into a three line shell script (export PATH=...; cd ...;
> the-gcc-command-that-failed ...)
> and verify that running that script reproduces the problem quickly and
> exactly.
> Then I do something like -save-temps, and compare the preprocessed
> sources (setjmp.s) with the original source (setjmp.S).

Yep, that's it. __i686 is indeed being defined to 1.


Here's a patch I apply to fix a similar problem with sparc;
this has been fixed in glibc mainline now, I think, but similar
problems might lurk.
http://kegel.com/crosstool/crosstool-0.28-rc36/patches/glibc-2.3.2/glibc-2.3.2-sparc32-sysdep.patch



Is there any reason why an equivalent patch (i.e. #undef __i686) in sysdeps/unix/sysv/linux/i386/sysdep.h wouldn't do the trick for me?



See similar situation http://sources.redhat.com/ml/crossgcc/2004-06/msg00049.html though that fellow didn't seem to follow through.

- Dan


Switching the -c to -E in the-gcc-command-that-failed produces no output.


Next steps? You might have noticed that this is right on the boundary of where I have a clue and where I don't!

Thanks,

Simon.
--
Simon Poole
www.appliancestudio.com


------ Want more information? See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/ Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]