Hector Oron wrote:
Hello,
I downloaded emacs-23.1 and tried to compile it for ARM,
/usr/lib/gcc/arm-linux-gnueabi/4.4.3/libgcc.a(bpabi.o):(.ARM.exidx+0x0):
undefined reference to `__aeabi_unwind_cpp_pr0'
/usr/lib/gcc/arm-linux-gnueabi/4.4.3/libgcc.a(_divdi3.o):(.ARM.exidx+0x0):
undefined reference to `__aeabi_unwind_cpp_pr0'
/usr/lib/gcc/arm-linux-gnueabi/4.4.3/libgcc.a(_udivdi3.o):(.ARM.exidx+0x0):
undefined reference to `__aeabi_unwind_cpp_pr0'
collect2: ld returned 1 exit status
make[1]: *** [temacs] Error 1
make[1]: Leaving directory `/home/zumbi/emacs-23.1/src'
make: *** [src] Error 2
zumbi@Enano:~$ gcc -v
Using built-in specs.
Target: arm-linux-gnueabi
Configured with: ../src/configure -v --with-pkgversion='Debian
4.4.3-1' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr
--enable-shared --enable-multiarch --enable-linker-build-id
--with-system-zlib --libexecdir=/usr/lib --without-included-gettext
--enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4
--program-suffix=-4.4 --enable-nls --enable-clocale=gnu
--enable-libstdcxx-debug --enable-objc-gc --disable-sjlj-exceptions
--enable-checking=release --build=arm-linux-gnueabi
--host=arm-linux-gnueabi --target=arm-linux-gnueabi
Thread model: posix
gcc version 4.4.3 (Debian 4.4.3-1)
In my gcc-4.3.2 for Debian/ARM this symbol is both in the
'libgcc_s.so.1' and 'libgcc_eh.a' :
[root@Dell 4.3.2]# /usr/local/arm-debian-linux-gnueabi/bin/nm
libgcc_s.so.1 | grep __aeabi_unwind_cpp_pr0
000088fc T __aeabi_unwind_cpp_pr0
[root@Dell 4.3.2]# /usr/local/arm-debian-linux-gnueabi/bin/nm
libgcc_eh.a | grep __aeabi_unwind_cpp_pr0
00000494 T __aeabi_unwind_cpp_pr0
U __aeabi_unwind_cpp_pr0
U __aeabi_unwind_cpp_pr0
U __aeabi_unwind_cpp_pr0
and the 'libgcc' spec says :
*libgcc:
%{static|static-libgcc:-lgcc
-lgcc_eh}%{!static:%{!static-libgcc:%{!shared-libgcc:-lgcc --as-needed
-lgcc_s --no-as-needed}%{shared-libgcc:-lgcc_s%{!shared: -lgcc}}}}
So the '-lm -lgcc -lc -lgcc ' with the earlier 'gcc -nostdlib' in the
link command is something unexpected....
Does the emacs Makefile generate this kind of unexpected link command?