Linker problems
I have compiled my code successfully on red hat 9.0 on an i386 machine with no linker errors and the programs run fine. With that said....
I am now trying to port this code to red hat 2.1 AS (Advanced Server) on A64 X455 IBM machine. I am using the following linker and compiler versions: $ ld -v GNU ld version 2.11.90.0.8 (with BFD 2.11.90.0.8) $ cc -v Reading specs from /usr/lib/gcc-lib/ia64-redhat-linux/2.96/specs gcc version 2.96 20000731 (Red Hat Linux 7.2 2.96-124.7.2) The compile options are below: -g -Wall -fno-rtti -fno-exceptions -L/usr/shlib -lpthread -lm \ -pthread -D_THREAD_SAFE -lpthread -lc -lrt -ldl -rdynamic \ -D_GNU_SOURCE -D_LARGEFILE_SOURCE64 -D_FILE_OFFSET_BITS=64 \ The individual c program compiles fine as they all do!! Am I missing a compile option or do I have one I don't need? Here are a couple of the linker error messages: /home/l.c:5028: relocation truncated to fit:PCREL21B __divdf3 /home/l.c:6512: relocation truncated to fit: PCREL21B __divdf3 /home/l.c:7496: relocation truncated to fit: PCREL21B __divdf3 /home/l.c:8620: relocation truncated to fit: PCREL21B __divdf3 Someone please HELP me!!!!!! David |
Update your binutils version
|
Are you mixing 32 and 64 bit code?
|
I ran into this recently and noticed that multiply-definded routines were causing the "relax"
mode to be disabled. I could see the same failure if I did the link *without* the -relax flag. |
All times are GMT -5. The time now is 03:46 PM. |