移植curl到arm平台上

简要:最近需要在arm平台上使用curl来解析网页的api

一,下载curl源码

地址:https://curl.haxx.se/download.html

解压:tar -xvf curl-7.57.0.tar.gz

二,配置curl

./configure --prefix=/home/test/libcurl --host=arm-cortex_a9-linux CC=arm-cortex_a9-linux-gnueabi-gcc CXX=arm-cortex_a9-linux-gnueabi-g++

--prefix=/home/test/libcurl 是curl的安装路径

CC=arm-cortex_a9-linux-gnueabi-gcc

CXX=arm-cortex_a9-linux-gnueabi-g++

CC和CXX是对应使用的交叉编译器

然后执行

make

make install

生成成功后在libcurl目录下有四个文件夹
bin include lib share

三,移植到arm平台上
1,先到libcurl/bin下 readelf -d curl 查看curl的所需的库文件及库目录
   ##    或者使用ldd curl 查看所需要的库及库的路径  (2018-1-8更新)
 readelf -d curl

Dynamic section at offset 0x28420 contains 29 entries:
  Tag        Type                         Name/Value
 0x00000001 (NEEDED)                     Shared library: [libcurl.so.4]
 0x00000001 (NEEDED)                     Shared library: [libz.so.1]
 0x00000001 (NEEDED)                     Shared library: [libgcc_s.so.1]
 0x00000001 (NEEDED)                     Shared library: [libpthread.so.0]
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]
 0x0000000f (RPATH)                      Library rpath: [/home/test/libcurl/lib]

我这里显示库的路径是:/home/test/libcurl/lib
所以在开发板上要创建同样的路径名字,并将库文件全部复制
cp /home/test/libcurl/lib/* /home/project/rootfs/home/test/libcurl/lib(这个是我的开发板的路径)

2,复制bin下面的curl到开发板上
cp /home/test/libcurl/bin/curl /home/project/rootfs/home
3,执行./curl
~ # ./curl 
./curl: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
提示没有libz.so.1的库文件(后面还有很多这样的提示)
解决:开发板上已经有相应的库文件了,只是curl找不到
cp /lib/libz.so.1 /home/test/libcurl/lib 这是在开发板上执行的
然后继续执行./curl看还缺少什么库,继续使用上面的操作将库补全。

四,将curl放入开发板的bash目录
我的开发板bash目录是/bin
cp curl /bin 在开发板上执行

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值