主页 > 互联网 > 内容页

Tiny4412下CURL安装与使用

2023-05-31 17:10:15 来源:嵌入式技术

CURL是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行。它支持文件上传和下载,所以是综合传输工具,但按传统,习惯称CURL为下载工具。CURL还包含了用于程序开发的libcurl。


(相关资料图)

移植环境:

Linux版本:Linux3.5

编译器:arm-linux-gcc

开发板环境:tiny4412-Cortex-A9

CURL版本:7.8.0

1.编译与安装 libopenssl 库

要移植CURL库,首先则需要移植libopenssl 库。

OpenSSL 是一个安全套接字层密码库, 囊括主要的密码算法、 常用的密钥和证书封装管理功能及 SSL 协议, 并提供丰富的应用程序供测试或其它目 的使用。

OpenSSL 被曝出现严重安全漏洞后, 发现多数通过 SSL 协议加密的网站使用名为OpenSSL 的开源软件包。 OpenSSL 漏洞不仅影响以 https 开头的网站, 黑客还可利用此漏洞直接对个人电脑发起“心脏出血”( Heartbleed) 攻击。 据分析, Windows 上有大量软件使用了存在漏洞的 OpenSSL 代码库, 可能被黑客攻击抓取用户电脑上的内存数据。 下载链接: http://distfiles.macports.org/openssl/

(1) 将下载的 openssl-1.0.2e.tar.gz 压缩包拷贝至虚拟机解压。

[wbyq@wbyq src_pack]$ tar xvf /mnt/hgfs/ubuntu/software_pack/openssl-1.0.2s.tar.gz

(2) 配置编译安装路径

[wbyq@wbyq openssl-1.0.2s]$ ./config shared no-asm --prefix=$PWD/tmp--prefix=$PWD/tmp 表示编译安装的路径为当前目 录下的 tmp

(3) 修改顶层 Makefile 文件

[wbyq@wbyq openssl-1.0.2s]$ gedit Makefile +62CC= arm-linux-gccAR= arm-linux-ar $(ARFLAGS) rRANLIB= arm-linux-ranlibRC= windresNM= arm-linux-nmPERL= /usr/bin/perlTAR= tarTARFLAGS= --no-recursionMAKEDEPPROG= arm-linux-gccLIBDIR=lib

(4)编译 make

[wbyq@wbyq openssl-1.0.2s]$ makemaking all in crypto...make[1]: 进入目 录“ /home/wbyq/src_pack/openssl-1.0.2s/crypto”/usr/bin/perl ../util/mkbuildinf.pl "arm-linux-gcc -I. -I.. -I../include -fPIC -DOPENSSL_PIC-DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -O3-Wall" "linux-x86_64" >buildinf.harm-linux-gcc -I. -I.. -I../include -fPIC -DOPENSSL_PIC -DOPENSSL_THREADS -D_REENTRANT-DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -O3 -Wall -c -o cversion.o cversion.ccc1: error: unrecognized command line option "-m64"<内置>: recipe for target "cversion.o" failedmake[1]: *** [cversion.o] Error 1make[1]: 离开目 录“ /home/wbyq/src_pack/openssl-1.0.2s/crypto”Makefile:287: recipe for target "build_crypto" failedmake: *** [build_crypto] Error 1

编译报错解决:

[wbyq@wbyq openssl-1.0.2s]$ gedit Makefile

(5)重新编译与安装 make && make install

[wbyq@wbyq openssl-1.0.2s]$ make && make install

(6) 编译生成文件

[wbyq@wbyq openssl-1.0.2s]$ cd tmp/[wbyq@wbyq tmp]$ lsbin include lib ssl

(7)拷贝 lib 下的 so 文件到开发板 lib 目 录下

[wbyq@wbyq tmp]$ cp ./lib/*.so* /home/wbyq/src_pack/rootfs/lib/ -rfdv

2.安装 curl 工具

下载地址: https://curl.se/

(1) 将下载的 curl-7.80.0.tar.gz 压缩包拷贝至虚拟机解压

[wbyq@wbyq src_pack]$ tar xvf /mnt/hgfs/ubuntu/software_pack/curl-7.80.0.tar.gz

(2) 配置编译安装路径

[wbyq@wbyq curl-7.80.0]$ CPPFLAGS="-I/home/wbyq/src_pack/openssl-1.0.2s/tmp/-I/home/wbyq/src_pack/openssl-1.0.2s/tmp/include"LDFLAGS="-L/home/wbyq/src_pack/openssl-1.0.2s/tmp/lib" LIBS="-ldl" ./configure--host=arm-linux-gcc CC=arm-linux-gcc CXX=arm-linux-g++ --with-ssl --enable-shared--enable-static --disable-dict --disable-ftp --disable-imap --disable-ldap --disable-ldaps--disable-pop3 --disable-proxy --disable-rtsp --disable-smtp --disable-telnet --disable-tftp--disable-zlib --without-ca-bundle --without-gnutls --without-libidn --without-librtmp--without-libssh2 --without-nss --without-zlib --prefix=$PWD/_install

指定 openssl-1.0.2s 头文件路径:CPPFLAGS="-I/home/wbyq/src_pack/openssl-1.0.2s/tmp/ -I/home/wbyq/src_pack/openssl-1.0.2s/tmp/include"指定 openssl-1.0.2s 库路径:LDFLAGS="-L/home/wbyq/src_pack/openssl-1.0.2s/tmp/lib"

(3)编译与安装

[wbyq@wbyq curl-7.80.0]$ make && make install

(4)拷贝相关文件到开发板目录下

[wbyq@wbyq curl-7.80.0]$ cd _install/[wbyq@wbyq _install]$ lsbin include lib share[wbyq@wbyq _install]$ cp ./bin/curl /home/wbyq/src_pack/rootfs/bin/[wbyq@wbyq _install]$ cp lib/*.so* /home/wbyq/src_pack/rootfs/lib -rfdv

(5)开发板下测试 curl 命令

[root@wbyq mt7601u]# curl api.seniverse.com/v3/weather/now.json?key=SwD4-ybQxhedD1z7U"&"location=nanchang"&"language=zh-Hans"&"unit=c{"results":[{"location":{"id":"WT47HJP3HEMP","name":" 南 昌 ","country":"CN","path":" 南 昌 , 南昌 , 江 西 , 中 国 ","timezone":"Asia/Shanghai","timezone_offset":"+08:00"},"now":{"text":" 多 云","code":"4","temperature":"10"},"last_update":"2021-11-22T09:11:57+08:00"}]}[root@wbyqmt7601u]审核编辑 黄宇

标签:

上一篇:即时:陕西安康今年脱贫人口就业规模将稳定在36万人以上
下一篇:最后一页

IT

家电