This is the mail archive of the crossgcc@sourceware.org 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: tried gcc-4.1.0-glibc-2.3.6 -- mips.dat


Not sure why you took the thread off the list, but...

Philip Rakity wrote:

Dave,


I am just playing -- curious what works and what does not.

is the fundamental problem that the is not GCC_CORE_DIR=gcc-4.1.0
but rather
GCC_CORE_DIR=gcc-3.3.6



I have never studied nor used crosstool (probably a mistake on my part), but I have to ask myself why there appears to be (at least in the name of these variables) a mixing of gcc-3.3.6 and 4.1.


The symptoms you are seeing are indicitive of using a gcc 3.3 vintage compiler with binutils 2.16.1

the gcc-4.1.0-blic-2.3.6.dat file is pasted below

BINUTILS_DIR=binutils-2.16.1
GCC_CORE_DIR=gcc-3.3.6
GCC_DIR=gcc-4.1.0
GLIBC_DIR=glibc-2.3.6
LINUX_DIR=linux-2.6.15.4
LINUX_SANITIZED_HEADER_DIR=linux-libc-headers-2.6.12.0
GLIBCTHREADS_FILENAME=glibc-linuxthreads-2.3.6
GDB_DIR=gdb-6.4


regards,


Philip

--- David Daney <ddaney@avtrex.com> wrote:


Dan Kegel wrote:

On 3/5/06, Philip Rakity <prakity@yahoo.com> wrote:


i tried using DawinPorts make (version 3.80) -- same failure as

make


with macintosh)
I then checked out make from the cvs tree and used that instead
Now failure is different
...

/Volumes/unix/crosstool-0.42/build/mips-unknown-linux-gnu/gcc-4.1.0-glibc-2.3.6/gcc-3.3.6/gcc/libgcc2.c

-fexceptions -fnon-call-exceptions -o libgcc/./_divdi3.o
/var/tmp//cchbECRV.s: Assembler messages:
/var/tmp//cchbECRV.s:956: Error: operation combines symbols in
different segments
make[2]: *** [libgcc/./_divdi3.o] Error 1
make[2]: Leaving directory

`/Volumes/unix/crosstool-0.42/build/mips-unknown-linux-gnu/gcc-4.1.0-glibc-2.3.6/build-gcc-core/gcc'

make[1]: *** [libgcc.a] Error 2
make[1]: Leaving directory

`/Volumes/unix/crosstool-0.42/build/mips-unknown-linux-gnu/gcc-4.1.0-glibc-2.3.6/build-gcc-core/gcc'

make: *** [all-gcc] Error 2


(Please trim your logs a bit more (like I did above).
Also please do a google search for the error message before

posting.)


I think this error might have been discussed here:
http://sources.redhat.com/ml/crossgcc/2005-09/msg00181.html

Does that help?

I have not followed the entire thread, but know that the 'Error: operation combines symbols in different segments' message is caused
by a change in mips binutils around the 2.15 version time frame. Before
the change you could do math on symbols in different sections, after the change you could not.


Versions of GCC released before the change (perhaps about 3.4.3 and 3.3.5) try to calculate the offset between symbols in different
segments (this happens in .eh_frame and .debug_frame sections) resulting in
the error you are seeing.


The solution is to use GCC and Binutils of a compatible vintage. Old GCCs only work with old Binutils. New GCCs work with old and new
Binutils.


Now how to make use of this knowledge in relation to crosstool, I
have no idea. But I am fairly sure that that is what is happening.


David Daney.




__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com


--
For unsubscribe information see http://sourceware.org/lists.html#faq


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