交叉编译常用的有两种,一种是完全在目标机上运行,一种是在开发主机上运行但是处理的是目标机格式
前者简单,后者类的软件有交叉编译器本,交叉gdb等
build 编译该软件所使用的平台,一般来说开发机默认是X86,如i686-pc-linux-gnu
host 该软件将运行的平台,通常指定为交叉编译器的前缀,如arm-gcc
target 该软件所处理的目标平台,通常指定为交叉编译器的前缀,不指定则默认为host
常见问题1
找不到交叉编译器而config到非交叉编译
原因是路径不可见,引出来即可
常见问题2
#./configure --host=arm_v5t_le --with-libs --with-zlib=/work/ssh/install/zlib-1.2.5 --with-ssl-dir=/work/ssh/install/openssl-1.0.0 --disable-etc-default-login --with-ldflags=-lcrypt CC=arm-9tdmi-linux-gnu-gcc AR=arm_v5t_le-ar
出现这个错误的话checking host system type ....invalid configuration 'arm-vet_le': machine 'arm_v5t_le' not recognized
用下面解决办法:
修改config.sub 把arm_v5t_le加上。
| arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | arm_v5t_le \
以上理解有些潦草肤浅,后续有新问题则继续补充
参考http://hi.baidu.com/happyge/blog/item/6915fc2443bb09194c088d05.html
阅读(2225) | 评论(0) | 转发(0) |