This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

U-Boot build error after upgrading to latest version

I am using a very old version of uboot. It hasn't been updated in literally years. I just updated to version 2012.07-rc1 (i believe?). I had no trouble building my older version of uboot using:

make distclean

make davinci_dvevm_config

make

When I do that using the new version, I get the following error. It seems that I just have something configured wrong.

/usr/lib/gcc/ ....... (long path) ...... /bin/ld: armv5te architecture of input file 'crc32.o' is incompatible with i386 output

I get a few errors like that, then a line that says:

collect2: ld returned 1 exit status

and the make fails.

All the path stuff seems to be set up properly since the previous build works, and the make is clearly using the correct gcc (i configured this in the Makefile) but it looks like its using the INCORRECT ld? What am I missing? Any ideas?

Thanks

  • I have not seen this particular error before, but since it's in the area of tool building it might be something related to gcc. This crc file is being built with the native gcc and not the cross compiler. The version of gcc I have is 4.4.3.

  • Hi,

    I was able to successfully build u-boot v2012.07-rc1 using the below steps:

    make CROSS_COMPILE=arm-none-linux-gnueabi- distclean

    make CROSS_COMPILE=arm-none-linux-gnueabi- davinci_dvevm_config

     make CROSS_COMPILE=arm-none-linux-gnueabi-

    I used CodeSourcery cross compiler version gcc version 4.3.3 (Sourcery G++ Lite 2009q1-203).

    Host compiler version was gcc version 4.4.5 (Ubuntu/Linaro 4.4.4-14ubuntu5).

    Regards, Sudhakar