|
View:
New views
2 Messages
—
Rating Filter:
Alert me
|
|
|
undefined __aeabi_unwind_cpp_pr0 errorHello
On trying to compile the kernel 2.6.22.19 with the gcc 4.3.2 for arm processor, gcc -v is as below Using built-in specs. Target: arm-unknown-linux-gnueabi Configured with: /home/developer/devel/crosscompiler/targets/src/gcc-4.3.2/configure --build=i686-pc-linux-gnu --target=arm-unknown-linux-gnueabi --host=i686-pc-linux-gnu --prefix=/home/developer/x-tools/arm-unknown-linux-gnueabi --with-sysroot=/home/developer/x-tools/arm-unknown-linux-gnueabi/arm-unknown-linux-gnueabi/sys-root --enable-languages=c,c++ --disable-multilib --with-float=soft --with-gmp=/home/developer/x-tools/arm-unknown-linux-gnueabi --with-mpfr=/home/developer/x-tools/arm-unknown-linux-gnueabi --with-pkgversion=crosstool-NG-1.2.0+svn_trunk@1176 --enable-__cxa_atexit --with-local-prefix=/home/developer/x-tools/arm-unknown-linux-gnueabi/arm-unknown-linux-gnueabi/sys-root --disable-nls --enable-threads=posix --enable-symvers=gnu --enable-c99 --enable-long-long --enable-target-optspace Thread model: posix gcc version 4.3.2 (crosstool-NG-1.2.0+svn_trunk@1176) I am getting the below error Can u please tell me if some extra flags, to be used in compiling the gcc, so that the "__aeabi_unwind_cpp_pr0" function gets included with the libgcc. In kernel include/linux/iffies.h there are many macro divisions and i have replaced one of these macros with a varable, and on compilng the kernel , it complains of the undefined __udivdi3 __divdi3 functions , because of this , i am trying to link those functions in the libgcc.a , on doing so i am getting the below error. LD .tmp_vmlinux1 /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: ERROR: Source object /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_udivsi3.o) has EABI version 4, but target .tmp_vmlinux1 has EABI version 0 /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: failed to merge target specific data of file /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_udivsi3.o) /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: ERROR: Source object /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_umodsi3.o) has EABI version 4, but target .tmp_vmlinux1 has EABI version 0 /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: failed to merge target specific data of file /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_umodsi3.o) /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: ERROR: Source object /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_dvmd_lnx.o) has EABI version 4, but target .tmp_vmlinux1 has EABI version 0 /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: failed to merge target specific data of file /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_dvmd_lnx.o) /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: ERROR: Source object /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_divdi3.o) has EABI version 4, but target .tmp_vmlinux1 has EABI version 0 /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: failed to merge target specific data of file /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_divdi3.o) /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: ERROR: Source object /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_udivdi3.o) has EABI version 4, but target .tmp_vmlinux1 has EABI version 0 /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: failed to merge target specific data of file /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_udivdi3.o) /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: ERROR: Source object /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_clz.o) has EABI version 4, but target .tmp_vmlinux1 has EABI version 0 /home/developer/x-tools/arm-unknown-linux-gnueabi/bin/arm-unknown-linux-gnueabi-ld: failed to merge target specific data of file /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_clz.o) /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_dvmd_lnx.o): In function `__div0': /home/developer/devel/crosscompiler/targets/src/gcc-4.3.2/libgcc/../gcc/config/arm/lib1funcs.asm:1079: undefined reference to `raise' /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_divdi3.o):(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' /home/developer/x-tools/arm-unknown-linux-gnueabi/lib/gcc/arm-unknown-linux-gnueabi/4.3.2/libgcc.a(_udivdi3.o):(.ARM.exidx+0x0): undefined reference to `__aeabi_unwind_cpp_pr0' make: *** [.tmp_vmlinux1] Error 1 Thanks Virupax |
|
|
Re: undefined __aeabi_unwind_cpp_pr0 errorHi !
I'm having the same kinds of errors, trying to compile u-boot with gcc from current testing from emdebian $ arm-linux-gnueabi-gcc -v [...] gcc version 4.3.3 (Debian 4.3.3-3) I found some solutions : For this : Look at the ABI you are using (gcc flags for compilation) Here are some information : http://wiki.debian.org/ArmEabiPort I had to replace PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,-mabi=apcs-gnu) with PLATFORM_CPPFLAGS +=$(call cc-option,-mapcs-32,-mabi=aapcs-linux) (removing is also OK) For this : For this, you must either define a raise function, or, as I did for uboot, define the raise symbol as an alias for an existing one. I used what is done for the uboot version for openmoko : PLATFORM_LDFLAGS += --defsym raise=hang But for this : I'm still looking around for a solution. If anybody has one, he's welcome to reply to this thread ! Thanks. |
| Free embeddable forum powered by Nabble | Forum Help |