mips交叉编译libcurl带http2.0

libcurl真不好搞,整整搞了十多个小时才搞定。以下记录一下

1.编译操作系统用x86 centos6.9,之前用了x64编译成功,但板子上运行报浮点数溢出,也不知道什么原因。

2.centos6.9最下安装,安装之后安装交叉编译环境,其他什么都不要装。

3.libcurl要支持http2.0需要(zlib,openssl,nghttp2三个库支持)

4.这些依赖库还有版本依赖的问题,我试验能用的版本是

curl-7.49.1
nghttp2-1.23.1
openssl-1.0.2l
zlib-1.2.11

这些版本可用,其他未知


5.所有都使用源码安装。


安装次序如下

1.安装zlib

下载解压之后,

http://www.zlib.net/zlib-1.2.11.tar.gz

./configure  --prefix=/data2/mips/zlib

修改 Makefile

CC=mipsel-linux-gcc
CPP=mipsel-linux-gcc -E

make;make install

make之后生产zlib.pc拷贝到 /data2/mips/pkg下


2.安装openssl

https://www.openssl.org/source/old/1.0.1/openssl-1.0.1u.tar.gz

下载解压之后

./config shared  --prefix=/data2/mips/libssl102 no-asm --cross-compile-prefix=mipsel-linux-

编辑Makefile,去掉 -m64

make;make install

make之后生产openssl.pc,libssl.pc,libcrytpo.pc拷贝到 /data2/mips/pkg下


3.安装nghttp2

https://github.com/nghttp2/nghttp2/releases/download/v1.23.1/nghttp2-1.23.1.tar.gz

下载解压之后,注意要下载release包,用configure安装的

./configure --prefix=/data2/mips/libng --host=mipsel-linux PKG_CONFIG_PATH=/data2/mips/pkg

检查zlib和openssl是否识别出来

make;make install


4.安装libcurl

https://curl.haxx.se/download/curl-7.49.1.tar.gz

下载解压之后

./configure --prefix=/data2/mips/libcurl --host=mipsel-linux --with-ssl=/data2/mips/libssl102 --with-zlib=/data2/mips/zlib --with-nghttp2=/data2/mips/libng

make

make会出错,显示nphttp2库没找到

修改 src/Makefile

235行改成   CCLD = $(CC) -lnghttp2

make就可以过去了

make install 完成安装







  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值