arm编译添加头文件、库文件操作,例如tslib、freetype、libpng等

查看编译的库中是否存在configure文件,存在可以按以下步骤配置

以tslib为例

编译过程

在tslib文件夹下  ​  

工具链配置

 export ARCH=arm
 export CROSS_COMPILE=arm-linux-gnueabihf-
 export PATH=$PATH:/usr/lib/gcc-cross/arm-linux-gnueabihf/7/../../../../arm-linux-gnueabihf/bin

上述路径PATH可以有此命令查看 

echo 'main(){}'| arm-linux-gnueabihf-gcc -E -v -

选择上述的编译器路径即可,在后面操作其中的include、lib、bin三个文件。l

Note:arm-linux-gnueabihf-gcc是你当前使用的编译器,选择你自己的编译器

 

编译

  ./configure --host=arm-linux-gnueabihf --prefix=$PWD/tmp
 make && make install 

cd tmp

编译后进入tmp文件夹下,就会有以下文件

  • bin:存放测试的可执行程序
  • etc:存放配置文件
  • include:存放所需头文件
  • lib:存放库文件so

编译完成后的PC端移植

 tslib-1.21/tmp$ sudo cp include/*  /usr/lib/gcc-cross/arm-linux-gnueabihf/7/../../../../arm-linux-gnueabihf/include
 tslib-1.21/tmp$ sudo cp lib/*so* /usr/lib/gcc-cross/arm-linux-gnueabihf/7/../../../../arm-linux-gnueabihf/lib/

编译完成后的开发板移植

 /mnt/tslib-1.21$ sudo cp bin/* /bin/
 /mnt/tslib-1.21$ sudo cp lib/*so* -d /lib/
 /mnt/tslib-1.21/lib$ sudo cp ts /lib/ -rf
 /mnt/tslib-1.21$ sudo cp etc/ts.conf /etc/

 ​

其余的如freetype、libpng,编译可能存在的问题

编译过程都如上述步骤

  1. 出现file format no recognition,文件编码不能识别问题,使用file查看文件属性,确认是编译环境下安装的库
  2. libpng可能会出现zlib库未安装问题

zlib 安装

 ./configure --host=arm-linux-gnueabihf --prefix=$PWD/tmp
vi Makefile

第19,30,31行的gcc改为arm-linux-gcc后保存退出

make && make install


 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值