0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區
會(huì )員中心
創(chuàng )作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內不再提示

Tiny4412下CURL安裝與使用

嵌入式技術(shù) ? 來(lái)源:嵌入式技術(shù) ? 作者:嵌入式技術(shù) ? 2023-05-31 17:20 ? 次閱讀

CURL是一個(gè)利用URL語(yǔ)法在命令行下工作的文件傳輸工具,1997年首次發(fā)行。它支持文件上傳和下載,所以是綜合傳輸工具,但按傳統,習慣稱(chēng)CURL為下載工具。CURL還包含了用于程序開(kāi)發(fā)的libcurl。

移植環(huán)境:

Linux版本:Linux3.5

編譯器:arm-linux-gcc

開(kāi)發(fā)板環(huán)境:tiny4412-Cortex-A9

CURL版本:7.8.0

1.編譯與安裝 libopenssl 庫

要移植CURL庫,首先則需要移植libopenssl 庫。

OpenSSL 是一個(gè)安全套接字層密碼庫, 囊括主要的密碼算法、 常用的密鑰和證書(shū)封裝管理功能及 SSL 協(xié)議, 并提供豐富的應用程序供測試或其它目 的使用。

OpenSSL 被曝出現嚴重安全漏洞后, 發(fā)現多數通過(guò) SSL 協(xié)議加密的網(wǎng)站使用名為OpenSSL 的開(kāi)源軟件包。 OpenSSL 漏洞不僅影響以 https 開(kāi)頭的網(wǎng)站, 黑客還可利用此漏洞直接對個(gè)人電腦發(fā)起“心臟出血”( Heartbleed) 攻擊。 據分析, Windows 上有大量軟件使用了存在漏洞的 OpenSSL 代碼庫, 可能被黑客攻擊抓取用戶(hù)電腦上的內存數據。
下載鏈接: http://distfiles.macports.org/openssl/

poYBAGR3DRqAUZkBAAWEeFlQkf0052.png

(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 +62
CC= arm-linux-gcc
AR= arm-linux-ar $(ARFLAGS) r
RANLIB= arm-linux-ranlib
RC= windres
NM= arm-linux-nm
PERL= /usr/bin/perl
TAR= tar
TARFLAGS= --no-recursion
MAKEDEPPROG= arm-linux-gcc
LIBDIR=lib
poYBAGR3DxWAfZ7YAAOWK7nl9Wg674.png

(4)編譯 make

[wbyq@wbyq openssl-1.0.2s]$ make
making all in crypto...
make[1]: 進(jìn)入目 錄“ /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.h
arm-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.c
cc1: error: unrecognized command line option "-m64"
: recipe for target 'cversion.o' failed
make[1]: *** [cversion.o] Error 1
make[1]: 離開(kāi)目 錄“ /home/wbyq/src_pack/openssl-1.0.2s/crypto”
Makefile:287: recipe for target 'build_crypto' failed
make: *** [build_crypto] Error 1

編譯報錯解決:

poYBAGR3D3OAeBniAAQSp_151D0283.png
[wbyq@wbyq openssl-1.0.2s]$ gedit Makefile
pYYBAGR3D5CAHwsaAAPlSkUnr34367.pngpYYBAGR3D6GAc3XpAALrzGJIJDY983.png

(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]$ ls
bin include lib ssl

(7)拷貝 lib 下的 so 文件到開(kāi)發(fā)板 lib 目 錄下

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

2.安裝 curl 工具

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

pYYBAGR3ECOAH6DzAAbQwhKrUkw627.pngpoYBAGR3EDCAI4CyAAQzWzAUjWk368.png

(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)拷貝相關(guān)文件到開(kāi)發(fā)板目錄下

[wbyq@wbyq curl-7.80.0]$ cd _install/
[wbyq@wbyq _install]$ ls
bin 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)開(kāi)發(fā)板下測試 curl 命令

[root@wbyq mt7601u]# curl api.seniverse.com/v3/weather/now.json?key=SwD4-ybQxhe
dD1z7U'&'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@wbyq
mt7601u]


審核編輯 黃宇
聲明:本文內容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權轉載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習之用,如有內容侵權或者其他違規問(wèn)題,請聯(lián)系本站處理。 舉報投訴
  • Curl
    +關(guān)注

    關(guān)注

    0

    文章

    14

    瀏覽量

    8119
  • OpenSSL
    +關(guān)注

    關(guān)注

    0

    文章

    20

    瀏覽量

    8605
收藏 人收藏

    評論

    相關(guān)推薦

    【代碼】tiny4412裸機Demo

    ` 本帖最后由 zsm_linux 于 2014-8-15 10:31 編輯 我想肯定很多人需要,下載自CSDN, 為數不多的4412資料資料包含: 需要資料聯(lián)系QQ 1402284892`
    發(fā)表于 08-15 10:05

    免費試用“Tiny4412開(kāi)發(fā)板——友善之臂Cortex-A9”

    本帖最后由 L490351555 于 2015-8-19 08:38 編輯 大家好,這兩天咱們的論壇搞了一個(gè)開(kāi)發(fā)板投票試用活動(dòng)?,F在有一個(gè)投票項就是“Tiny4412開(kāi)發(fā)板——友善之臂
    發(fā)表于 08-18 19:09

    500w像素CMOS高清攝像頭模塊,支持NanoPi2,Tiny4412

    =a230r.1.14.318.LGJVqB&id=525273480932&ns=1&abbucket=15#detail500w像素CMOS高清攝像頭模塊,支持NanoPi2,Tiny4412
    發(fā)表于 12-18 18:18

    【Nanopi2試用體驗】Matrix的安裝與嘗試

    。nanopi分支用于支持NanoPi;nanopi2分支用于支持NanoPi 2;tiny4412分支用于支持Tiny4412;raspberrypi分支用于支持RaspberryPi
    發(fā)表于 12-30 17:00

    友善之臂Ubuntu使用手冊

    友善之臂Ubuntu使用手冊本手冊介紹如何在友善之臂開(kāi)發(fā)板 Tiny4412 以及 NanoPC-T1 上安裝和使用 Ubuntu 系統。
    發(fā)表于 12-18 10:42

    4412燒Android時(shí)不能啟動(dòng),停在A(yíng)NDROID界面

    我也大家玩高大上的4412了,跟著(zhù)最新光盤(pán)提供的"tiny4412用戶(hù)燒寫(xiě)"手冊,刷ANDROID時(shí),燒寫(xiě)可以成功,但就是啟動(dòng)不了,一直停在A(yíng)NDROID圖標界面。串口也一直打印
    發(fā)表于 05-13 07:45

    請問(wèn)在4412的USB驅動(dòng)程序里該如何修改?

    tiny4412遇到一個(gè)問(wèn)題,4412作為USB設備與作為主機的PC連接,物理連接是USB線(xiàn),在4412上需要把USB上的特殊數據解析出來(lái),當做并口數據處理。請問(wèn)在4412的USB驅
    發(fā)表于 05-17 00:12

    Tiny4412-Uboot啟動(dòng)后無(wú)法加載uImage

    好吧。。在這里先祈求,有哪位大大,或者老師,能關(guān)注。個(gè)人一度試圖移植tiny4412的uboot和kernel還有根文件系統。。。。。然后順帶學(xué)習一設備樹(shù)的用法這個(gè)是uboot配置ls/dev
    發(fā)表于 08-30 05:45

    TINY4412 UART程序設計得相關(guān)資料分享

    嵌入式實(shí)驗: TINY4412 UART 程序設計一、實(shí)驗目的熟悉UART通信相關(guān)的寄存器的功能和設置方法,設置引腳復用,選擇UART接收和發(fā)送對應的引腳用于UART通信,數據流格式設置,設置
    發(fā)表于 11-09 06:11

    如何實(shí)現Tiny4412通過(guò)NRF24L01 2.4G無(wú)線(xiàn)模塊發(fā)送數據呢

    LinuxSPI設備驅動(dòng)該怎樣去編寫(xiě)呢?如何實(shí)現Tiny4412通過(guò)NRF24L01 2.4G無(wú)線(xiàn)模塊發(fā)送數據呢?
    發(fā)表于 12-17 06:36

    iny4412嵌入式Linux操作系統啟動(dòng)流程是怎樣的

    本次介紹一友善之臂tiny4412嵌入式Linux操作系統分析首先,可以從官方提供的用戶(hù)手冊中得到這樣一張圖,它簡(jiǎn)單表達了裸機燒寫(xiě)啟動(dòng)系統的流程,不過(guò)這張圖中缺少對BL2的描述,所以我就自己手繪了
    發(fā)表于 12-20 07:50

    alsa-lib實(shí)現聲音數據捕獲保存與播放的方法

    一、環(huán)境介紹宿主機: Redhat6.3 (32位Linux系統)目標開(kāi)發(fā)板: 友善之臂Tiny4412 ---三星EXYNOS4412交叉編譯器: arm-linux-gcc 4.5.1Linux
    發(fā)表于 12-24 08:17

    友善之臂Tiny4412核心板介紹

    Tiny4412是一款高性能的四核Cortex-A9核心板,由廣州友善之臂設計、生產(chǎn)和發(fā)行銷(xiāo)售。
    的頭像 發(fā)表于 11-05 17:40 ?1.1w次閱讀
    友善之臂<b class='flag-5'>Tiny4412</b>核心板介紹

    嵌入式實(shí)驗: TINY4412 UART 程序設計

    嵌入式實(shí)驗: TINY4412 UART 程序設計一、實(shí)驗目的熟悉UART通信相關(guān)的寄存器的功能和設置方法,設置引腳復用,選擇UART接收和發(fā)送對應的引腳用于UART通信,數據流格式設置,設置
    發(fā)表于 11-03 20:06 ?13次下載
    嵌入式實(shí)驗: <b class='flag-5'>TINY4412</b> UART 程序設計

    Linux系統如何安裝curl

    `curl`是用于在本地計算機與遠程服務(wù)器之間傳輸數據的命令行工具。使用curl時(shí)您可以使用HTTP,HTTPS, SCP , SFTP和FTP等協(xié)議下載或上傳數據。
    的頭像 發(fā)表于 12-06 16:53 ?1.6w次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看