Tiny4412 虚拟机交叉编译环境的设置以及编译u-boot 和 kernel
-
从CD 里面拷贝如下文件到虚拟机里面
-
解压
-
查看是否有如下文件
tiny4412_qt@chenfl:~/tiny4412$ ls opt/FriendlyARM/toolschain/4.5.1/bin/
arm-linux-addr2line arm-linux-gprof arm-none-linux-gnueabi-addr2line arm-none-linux-gnueabi-gprof
arm-linux-ar arm-linux-ld arm-none-linux-gnueabi-ar arm-none-linux-gnueabi-ld
arm-linux-as arm-linux-ldd arm-none-linux-gnueabi-as arm-none-linux-gnueabi-ldd
arm-linux-c++ arm-linux-nm arm-none-linux-gnueabi-c++ arm-none-linux-gnueabi-nm
arm-linux-cc arm-linux-objcopy arm-none-linux-gnueabi-cc arm-none-linux-gnueabi-objcopy
arm-linux-c++filt arm-linux-objdump arm-none-linux-gnueabi-c++filt arm-none-linux-gnueabi-objdump
arm-linux-cpp arm-linux-populate arm-none-linux-gnueabi-cpp arm-none-linux-gnueabi-populate
arm-linux-g++ arm-linux-ranlib arm-none-linux-gnueabi-g++ arm-none-linux-gnueabi-ranlib
arm-linux-gcc arm-linux-readelf arm-none-linux-gnueabi-gcc arm-none-linux-gnueabi-readelf
arm-linux-gcc-4.5.1 arm-linux-size arm-none-linux-gnueabi-gcc-4.5.1 arm-none-linux-gnueabi-size
arm-linux-gccbug arm-linux-strings arm-none-linux-gnueabi-gccbug arm-none-linux-gnueabi-strings
arm-linux-gcov arm-linux-strip arm-none-linux-gnueabi-gcov arm-none-linux-gnueabi-strip
-
设置环境变量
vim ~/.bashrc
// 添加如下
116 export PATH=$PATH:/home/tiny4412_qt/tiny4412/opt/FriendlyARM/toolschain/4.5.1/bin
117 export ARCH=arm
118 export CROSS_COMPILE=arm-none-linux-gnueabi-
-
u-boot 的编译
// 进入 u-boot 目录
make tiny4412_config
make -j4
-
kernel 编译
cp tiny4412_linux_defconfig .config -rf
make -j4
-
SD 卡启动 u-boot
编译完成之后, 进入 u-boot 目录
cd sd_fuse/
make
cd tiny4412/
升级用户到root
su
./sd_fusing.sh /dev/sdb
-
如果遇到 u-boot 无法启动的现象,请参考如下:
http://www.cnblogs.com/kevinhwang/p/5617629.html
-
如果遇到 kernel卡住的问题
进入kernel 目录
make menuconfig
System Type --->
[ ] Support TrustZone-enabled Trusted Execution Environment
// 把trustzone 关掉
Read The Fucking Source Code