前言:
開發環境是64位的ubuntu16.04,交叉工具鏈是通過sudo apt-get install ....安裝的,移植uboot2014.10,但是很奇怪,按照網上的介紹在start.s里面修改了時鍾,按道理串口是要有輸出的啊,但一連調了半個月,但串口還是沒有輸出,於是想看看哪里有問題,自己在/board/samsung/smdk2440/smdk2440.c里面添加了串口驅動,最后追查到,在init_sequence函數數組里面執行了四個函數就不執行了,我還以為卡在timer_init里面,后來我把這個函數注釋掉了,結果執行到init_baudrate就不執行了,我覺得很奇怪,我是燒到norflash里面運行的,代碼都是在flash上執行的,也不會有多少ram的使用,應該不會有問題啊,后來想到是不是工具鏈的問題,於是想起換工具鏈,用之前用過的工具鏈arm-linux-gcc4.3.2來測試下。
1.安裝arm-linux-gcc4.3.2
直接將文件拷貝到linux下解壓,修改.bashrc
sudo vim ~/.bashrc
在最后一行添加環境變量:
export PATH=/home/kent/work/01-tools/usr/local/arm/4.3.2/bin:$PATH
最后:
source ~/.bashrc
但是執行arm-linux-gcc -v發現有問題:
@ubuntu:~/work/02-git$ arm-linux-gcc -v arm-linux-gcc: command not found
2.出現這個問題,需要安裝32位的兼容包:
apt-get install lib32ncurses5 lib32z1 apt-get install gcc-multilib g++-multilib
安裝第二個沒成功,但是輸入arm-linux-之后按tab鍵已經可以補全了,
kent@ubuntu:~/work$ arm-linux-gcc -v Using built-in specs. Target: arm-none-linux-gnueabi Configured with: /scratch/julian/lite-respin/linux/src/gcc-4.3/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --enable-shared --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion='Sourcery G++ Lite 2008q3-72' --with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --with-build-sysroot=/scratch/julian/lite-respin/linux/install/arm-none-linux-gnueabi/libc --with-gmp=/scratch/julian/lite-respin/linux/obj/host-libs-2008q3-72-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-mpfr=/scratch/julian/lite-respin/linux/obj/host-libs-2008q3-72-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --disable-libgomp --enable-poison-system-directories --with-build-time-tools=/scratch/julian/lite-respin/linux/install/arm-none-linux-gnueabi/bin --with-build-time-tools=/scratch/julian/lite-respin/linux/install/arm-none-linux-gnueabi/bin Thread model: posix gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72)
工具鏈到此安裝結束。