1.开发环境
Linux开发环境 :Ubuntu18.04
目标芯片:imx6ull
交叉编译工具版本:gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux
交叉编译工具安装位置:/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/
config文件中工具位置如下:
CC=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc
CCLD=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-ld
RANLIB=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-ranlib
AR=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-ar
新手一定要搞清楚上面这些符号的含义。
2.软件包下载地址:
3.参考文章:
4.配置,交叉编译及安装
4.1.对软件包进行配置生成Makefile
sudo ./configure --host=arm-linux-gnueabihf\
--prefix=${pwd}/install \
CC=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-gcc\
CCLD=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-ld\
RANLIB=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-ranlib\
AR=/opt/gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux/bin/arm-linux-gnueabihf-ar\
4.2.make
4.3.make install
将文件夹bin、libexec 、share中的文件 全部复制到目标板文件夹
usr/bin,usr/libexec,usr/share中。
本次操作测试了1.34版本,1.28版本。
5.总结
1.交叉编译第三方独立工具包时,应先使用./configure -help命令,仔细查看编译配置说明。搞懂每一个选项的内容。
2.通过网页查找相似,相近的软件包的移植过程。编译时若出错首先检查自己软件包的配置项。
3.测试移植结果时,如果时间允许应测试两个相邻版本。Linux对插件的版本没有特别指定。有些插件之间可能存在兼容性(一般情况下不会碰到,但是遇到了就比较难定位问题)。
4.在以后的交叉编译的配置中千万不要图方便,尽量将编译环境描述清楚。否则会出现配置文件提示正确、编译正确但是运行make install时安装文件夹内没有任何生成文件的情况。
希望这篇文章只针对新手,目的是让刚接触交叉编译的朋友对单独工具包交叉编译步骤有所认识,如果帮到您麻烦点个赞。谢谢!