当前位置:网站首页>交叉编译 CURL
交叉编译 CURL
2022-08-09 14:58:00 【iBlackAngel】
概述
curl 是一个利用 URL 语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称 cURL 为下载工具。cURL 还包含了用于程序开发的 libcurl。
cURL 支持的通信协议有 FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP 和 RTSP。
- cURL 官方网址是:https://curl.se/
- cURL 使用 github 托管源码:https://github.com/curl/curl
下载
curl 项目主要提供源代码包。最新的稳定版本可以从官方网站的 Download 页面进行下载,网址:https://curl.se/download.html
本示例下载的源码包为 curl-7.68.0.tar.bz2
非常重要:
建议远离 7.82 版本,该版本在访问 HTTPS 时会报 ‘curl: (27) Out of memory’ 故障,无法正常使用,原因未知。
编译
在准备开始交叉编译 curl 之前,需要先交叉编译 OpenSSL,可以参考:交叉编译 OpenSSL。接着我们正式开始交叉编译 curl:
解压缩源码包
tar -xvf curl-7.68.0.tar.bz2cd进入源码包目录curl-7.68.0,创建编译脚本cross-compile.sh:#!/bin/bash OUTPUT=$(pwd)/output if [ -d $OUTPUT ]; then rm -r $OUTPUT fi mkdir $OUTPUT export PATH=$PATH:/work/sdk/nvidia/nvidia_6.0.1.0/toolchains/aarch64--glibc--stable-2020.08-1/bin ./configure --prefix=$OUTPUT \ --host=aarch64-linux \ --with-ssl=/home/V01/uidq2691/projects/openssl/openssl-1.1.1n/output \ --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt \ --with-ca-path=/etc/ssl/certs make && make install- 脚本首先检查是否在当前目录存在
output目录,如果不存在则创建该目录用于编译结果libcurl库的存放; - 指定交叉编译器的路径并将其加入到环境变量
$PATH保证能够正确调用编译器; --prefix指定最终生成的路径,结果会生成在output目录下;--host指定交叉编译工具链命令的前缀,生成的Makefile文件中会将使用到的编译工具补全成aarch64-linux-gcc或者aarch64-linux-ar等;--with-ssl指定交叉编译库 OpenSSL 的头文件和库路径;--with-ca-bundle指定 CA 证书的文件路径(可选);--with-ca-path指定存在 CA 证书的存放目录(可选)。
- 脚本首先检查是否在当前目录存在
执行编译:
bash cross-compile.sh
最后编译出来的 curl 位于 output 目录下。
Enjoy Your Life.
边栏推荐
猜你喜欢

Sequelize配置中的timezone测试

封装仿支付宝密码输入效果

Faster R-CNN 论文总结

tensor转cv::Mat(即CHW转HWC)原理含C#代码实现

MIUI12.1.5安装google App store,无需ROOT,不闪退

ConvNext笔记

【论文阅读】LIME:Low-light Image Enhancement via Illumination Map Estimation(笔记最全篇)

"Deep learning" evaluation index of target detection

flask局域网访问失败解决方法(使用pycharm运行代码的一定要看)

【Postgraduate Work Weekly】(Week 8)
随机推荐
链游是什么意思 链游和游戏的区别是什么
如何在实际操作中进行亚马逊测评
基于MySQL的数据在线管理系统
MouStart指纹浏览器怎么防关联
抱抱脸(hugging face)教程-中文翻译-共享定制模型
基于MTCNN和FaceNet的实时人脸检测识别系统
Retrofit2 初印象?
【研究生工作周报】
【 graduate work weekly 】 (10 weeks)
【深度学习】原始问题和对偶问题(六)
深入浅出最优化(3) 最速下降法与牛顿法
Postgraduate Work Weekly (Week 6)
【工具使用】Modsim32软件使用详解
大唐杯5G练习题(一)
NoUniqueBeanDefinitionException和JSON乱码处理出现异常
Visio画神经网络卷积层
【论文阅读】Deep Learning for Image Super-resolution: A Survey(DL超分辨率最新综述)
[Deep learning] attention mechanism
【Postgraduate Work Weekly】(Week 12)
【工具使用】Keil5软件使用-进阶工程配置篇