前言全局说明
curl 是用来访问网络,可以上传下载数据
一、说明
系统环境:
ubunt 18.04
二、官网下载源码:
2.1 最新版本
https://curl.haxx.se/download.html
https://github.com/curl/curl/releases
2.2 历史版本
2.3 变更日志
2.4 发布版本时间
https://curl.se/docs/releases.html
三、编译
3.1 下载
curl https://curl.se/download/curl-7.51.0.tar.gz -o curl-7.51.0.tar.gz
根据提示,下载gz后缀的源码 包:
3.2 解压
解压到任意路径
tar -zxf curl-7.51.0.tar.gz
解压绝对路径:/home/qt/temp
四、编译
4.1 生成编译配置项
用automake 生成编译相关配置文件
./buildconf
4.2 配置交叉编译工具链(toolchain)环境
将交叉编译工具链gcc的bin路径添加到 PATH 路径中, 假设工具链在:/tmp/gcc-linaro-aarch64-linux-gnu/bin
target_host=aarch64-linux-gnu
CROSS_COMPILE=aarch64-linux-gnu-
toolchain_bin=/tmp/gcc-linaro-aarch64-linux-gnu/bin
PATH=$toolchain_bin:$PATH
注意:aarch64-linux-gnu 根据你 /tmp/gcc-linaro-aarch64-linux-gnu/bin 里实际工具名修改
4.3 配置编译选项
cd curl-7.51.0/
./configure --host=${target_host} CC=${CROSS_COMPILE}gcc LD=${CROSS_COMPILE}ld \
--prefix=${PWD}/_install
--prefix 如果不指定安装路径,默认会安装到系统的 /usr/local/lib目录下,因为我们是给ARM机器上用的,为了系统干净,就指定安装到源码目录的 /home/qt/temp/curl-7.51.0/_install/ 下
其他一些参数:
--help 帮助
--enable-debug 在这里我只加了这个参数,为了后续的调试,
--enable-static 指定编译静态库
--with-openssl 指定的是openssl相关库目录
--with-ssl 开启对https支持,需要先编译openssl , 并使用--with-openssl=【指定openssl生成的lib,include ,bin 所在的路径】
4.4 编译、安装
make
make install
执行 make install 才能出现 _install/ 目录
安装完成:
编译出的结果:
免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。
参考、来源:
https://www.cnblogs.com/132818Creator/p/13074011.html (curl-7.51.0.tar.gz)
https://blog.csdn.net/lelebanaba/article/details/131254028 (libcurl简介)
https://blog.csdn.net/new9232/article/details/135495762
https://www.cnblogs.com/kernelx/p/15530149.html (编译一个linux版本、一个arm版本。)
https://blog.csdn.net/lelebanaba/article/details/131254028 (--with-ssl)