ld:libgcc/./libgcc.map: file format not recognized; treating as linker script
* the exact version of GCC being compiled;
gcc-3.4.3
* the system type;
SunOS ananke 5.5.1 Generic_103640-08 sun4m sparc SUNW,SPARCstation-5
This system had gcc version 2.7.2 but no make. I downloaded,compiled
and installed binutils-2.14.tar.gz and make-3.80.tar.gz.
* the options given when GCC was configured/built;
None
* the complete command line that triggers the bug;
make > & make.out & ; tail -f make.out
* the compiler output (error messages, warnings, etc.);
(make output below)
/usr/local/sparc-sun-solaris2.5.1/bin/ld:libgcc/./libgcc.map: file format
not recognized; treating as linker script
/usr/local/sparc-sun-solaris2.5.1/bin/ld:libgcc/./libgcc.map:1: parse error
collect2: ld returned 1 exit status
make[2]: *** [libgcc_s.so] Error 1
* a complete set of source files;
(The original gcc-3.4.3.tar file I downloaded)
* ld version linking GCC;
GNU ld version 2.14 20030612
* the version of gcc compiling GCC;
gcc version 2.7.2
Description:
1) I downloaded and unzipped gcc-3.4.3.tar.bz2
2) I read the README and html files in INSTALL/, there did not seem to be any
special actions to be performed for my architecture so I didn't modify any files
or use any command line options.
3) I ran ./configure
4) I ran make > & make.out & ; tail -f make.out. ld failed in what appears to
be the final link of libgcc. It did not like the format of libgcc.map. It looked
fine to me (see attached)
Let me know if you need any of the post-configure files (Makefile, config.log,
etc. If you want the intermediate files I will have to remake saving the temp
files.
================== libgcc.map ====================
GCC_3.0 {
global:
_Unwind_ForcedUnwind;
__muldi3;
__ashrdi3;
__negvsi2;
__subvdi3;
__addvdi3;
__clear_cache;
__subvsi3;
__addvsi3;
__register_frame_info_table_bases;
__ucmpdi2;
_Unwind_GetGR;
__fixunsdfdi;
__ashldi3;
__udivdi3;
__deregister_frame_info;
__negdi2;
__deregister_frame_info_bases;
__ffsdi2;
__floatdidf;
__register_frame_info;
__fixdfdi;
__cmpdi2;
__register_frame_table;
_Unwind_RaiseException;
__divdi3;
__lshrdi3;
_Unwind_SetGR;
__umoddi3;
_Unwind_Resume;
__fixunstfdi;
_Unwind_GetIP;
__fixunsdfsi;
__fixunssfdi;
__absvdi2;
__mulvdi3;
__fixtfdi;
__floatdisf;
__absvsi2;
__mulvsi3;
__moddi3;
__fixsfdi;
__register_frame_info_bases;
_Unwind_GetDataRelBase;
_Unwind_GetRegionStart;
__deregister_frame;
_Unwind_SetIP;
_Unwind_GetLanguageSpecificData;
__floatditf;
_Unwind_DeleteException;
__register_frame;
__udivmoddi4;
__fixunssfsi;
_Unwind_Find_FDE;
__negvdi2;
__register_frame_info_table;
_Unwind_GetTextRelBase;
local:
*;
};
GCC_3.3 {
global:
_Unwind_GetCFA;
_Unwind_Resume_or_Rethrow;
_Unwind_Backtrace;
_Unwind_FindEnclosingFunction;
} GCC_3.0;
GCC_3.3.1 {
global:
__gcc_personality_v0;
} GCC_3.3;
GCC_3.4 {
global:
__ctzdi2;
__ctzsi2;
__clzdi2;
__paritydi2;
__clzsi2;
__paritysi2;
__popcountdi2;
__popcountsi2;
} GCC_3.3.1;
GCC_3.4.2 {
global:
__enable_execute_stack;
} GCC_3.4;
================== make.out ==================
...
ranlib ./libgcc_eh.a
{ nm -pg libgcc/./_muldi3.o libgcc/./_negdi2.o libgcc/./_lshrdi3.o
libgcc/./_ashldi3.o libgcc/./_ashrdi3.o libgcc/./_cmpdi2.o libgcc/./_ucmpdi2.o
libgcc/./_floatdidf.o libgcc/./_floatdisf.o libgcc/./_fixunsdfsi.o
libgcc/./_fixunssfsi.o libgcc/./_fixunsdfdi.o libgcc/./_fixdfdi.o
libgcc/./_fixunssfdi.o libgcc/./_fixsfdi.o libgcc/./_fixxfdi.o
libgcc/./_fixunsxfdi.o libgcc/./_floatdixf.o libgcc/./_fixunsxfsi.o
libgcc/./_fixtfdi.o libgcc/./_fixunstfdi.o libgcc/./_floatditf.o
libgcc/./_clear_cache.o libgcc/./_enable_execute_stack.o libgcc/./_trampoline.o
libgcc/./__main.o libgcc/./_absvsi2.o libgcc/./_absvdi2.o libgcc/./_addvsi3.o
libgcc/./_addvdi3.o libgcc/./_subvsi3.o libgcc/./_subvdi3.o libgcc/./_mulvsi3.o
libgcc/./_mulvdi3.o libgcc/./_negvsi2.o libgcc/./_negvdi2.o libgcc/./_ctors.o
libgcc/./_ffssi2.o libgcc/./_ffsdi2.o libgcc/./_clz.o libgcc/./_clzsi2.o
libgcc/./_clzdi2.o libgcc/./_ctzsi2.o libgcc/./_ctzdi2.o
libgcc/./_popcount_tab.o libgcc/./_popcountsi2.o libgcc/./_popcountdi2.o
libgcc/./_paritysi2.o libgcc/./_paritydi2.o libgcc/./_divdi3.o
libgcc/./_moddi3.o libgcc/./_udivdi3.o libgcc/./_umoddi3.o
libgcc/./_udiv_w_sdiv.o libgcc/./_udivmoddi4.o libgcc/./unwind-dw2.o
libgcc/./unwind-dw2-fde.o libgcc/./unwind-sjlj.o libgcc/./gthr-gnat.o
libgcc/./unwind-c.o; echo %%; \
cat ./libgcc-std.ver \
| sed -e '/^[ ]*#/d' \
-e 's/^%\(if\|else\|elif\|endif\|define\)/#\1/' \
| /share/jupiter/linux/ThirdPartySoftware/GNUtools/gcc-3.4.3/gcc/xgcc
-B/share/jupiter/linux/ThirdPartySoftware/GNUtools/gcc-3.4.3/gcc/
-B/usr/local/sparc-sun-solaris2.5.1/bin/
-B/usr/local/sparc-sun-solaris2.5.1/lib/ -isystem
/usr/local/sparc-sun-solaris2.5.1/include -isystem
/usr/local/sparc-sun-solaris2.5.1/sys-include -O2 -DIN_GCC -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -I. -I. -I. -I./. -I./../include -I../intl -E
-xassembler-with-cpp -; \
} | nawk -f ./mkmap-symver.awk > libgcc/./tmp-libgcc.map
mv 'libgcc/./tmp-libgcc.map' libgcc/./libgcc.map
/share/jupiter/linux/ThirdPartySoftware/GNUtools/gcc-3.4.3/gcc/xgcc
-B/share/jupiter/linux/ThirdPartySoftware/GNUtools/gcc-3.4.3/gcc/
-B/usr/local/sparc-sun-solaris2.5.1/bin/
-B/usr/local/sparc-sun-solaris2.5.1/lib/ -isystem
/usr/local/sparc-sun-solaris2.5.1/include -isystem
/usr/local/sparc-sun-solaris2.5.1/sys-include -O2 -DIN_GCC -W -Wall
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition
-isystem ./include -fPIC -g -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -shared -nodefaultlibs -Wl,-h,libgcc_s.so.1
-Wl,-z,text -Wl,-z,defs -Wl,-M,libgcc/./libgcc.map -o libgcc_s.so.1.tmp
libgcc/./_muldi3.o libgcc/./_negdi2.o libgcc/./_lshrdi3.o libgcc/./_ashldi3.o
libgcc/./_ashrdi3.o libgcc/./_cmpdi2.o libgcc/./_ucmpdi2.o libgcc/./_floatdidf.o
libgcc/./_floatdisf.o libgcc/./_fixunsdfsi.o libgcc/./_fixunssfsi.o
libgcc/./_fixunsdfdi.o libgcc/./_fixdfdi.o libgcc/./_fixunssfdi.o
libgcc/./_fixsfdi.o libgcc/./_fixxfdi.o libgcc/./_fixunsxfdi.o
libgcc/./_floatdixf.o libgcc/./_fixunsxfsi.o libgcc/./_fixtfdi.o
libgcc/./_fixunstfdi.o libgcc/./_floatditf.o libgcc/./_clear_cache.o
libgcc/./_enable_execute_stack.o libgcc/./_trampoline.o libgcc/./__main.o
libgcc/./_absvsi2.o libgcc/./_absvdi2.o libgcc/./_addvsi3.o libgcc/./_addvdi3.o
libgcc/./_subvsi3.o libgcc/./_subvdi3.o libgcc/./_mulvsi3.o libgcc/./_mulvdi3.o
libgcc/./_negvsi2.o libgcc/./_negvdi2.o libgcc/./_ctors.o libgcc/./_ffssi2.o
libgcc/./_ffsdi2.o libgcc/./_clz.o libgcc/./_clzsi2.o libgcc/./_clzdi2.o
libgcc/./_ctzsi2.o libgcc/./_ctzdi2.o libgcc/./_popcount_tab.o
libgcc/./_popcountsi2.o libgcc/./_popcountdi2.o libgcc/./_paritysi2.o
libgcc/./_paritydi2.o libgcc/./_divdi3.o libgcc/./_moddi3.o libgcc/./_udivdi3.o
libgcc/./_umoddi3.o libgcc/./_udiv_w_sdiv.o libgcc/./_udivmoddi4.o
libgcc/./unwind-dw2.o libgcc/./unwind-dw2-fde.o libgcc/./unwind-sjlj.o
libgcc/./gthr-gnat.o libgcc/./unwind-c.o -lc && rm -f libgcc_s.so && if [ -f
libgcc_s.so.1 ]; then mv -f libgcc_s.so.1 libgcc_s.so.1.`basename `; else true;
fi && mv libgcc_s.so.1.tmp libgcc_s.so.1 && ln -s libgcc_s.so.1 libgcc_s.so
/usr/local/sparc-sun-solaris2.5.1/bin/ld:libgcc/./libgcc.map: file format not
recognized; treating as linker script
/usr/local/sparc-sun-solaris2.5.1/bin/ld:libgcc/./libgcc.map:1: parse error
collect2: ld returned 1 exit status
make[2]: *** [libgcc_s.so] Error 1
make[2]: Leaving directory
`/share/jupiter/linux/ThirdPartySoftware/GNUtools/gcc-3.4.3/gcc'
make[1]: *** [libgcc.a] Error 2
make[1]: Leaving directory
`/share/jupiter/linux/ThirdPartySoftware/GNUtools/gcc-3.4.3/gcc'
make: *** [all-gcc] Error 2
--
Summary: Can't build gcc 3.4.3: ld parse error on libgcc.map
Product: gcc
Version: 3.4.3
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: john at jupiter dot com
CC: gcc-bugs at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19136