1. 程式人生 > >libcurl庫的編譯(包括:x86和ARM版本)

libcurl庫的編譯(包括:x86和ARM版本)

由於專案中需要使用libcurl庫,所以就在網上搜羅了一些如何編譯出x86版本和ARM版本的libcurl庫。

首先給出如何使用原始碼來編譯出x86版本的庫。

一、下載:libcurl http://curl.haxx.se/download/curl-7.21.1.tar.gz

二、安裝:我們在這裡指定的安裝目錄為:/usr/local/curl 編譯libcurl原始碼,與編譯其他原始碼並無太大差別,依然是三步走:configure、make和make install 命令1: ./configure --prefix=/usr/local/curl 其中,--prefix是指定安裝目錄為:/usr/local/curl
命令2:make 命令3:sudo make install 可以看到lib庫,已經安裝在 /usr/local/curl/lib

接下來給出如何使用原始碼來編譯出ARM版本的庫。

相對於編譯x86版本,編譯ARM版本要更費事一些。但還是分為三步走。

本人使用環境

Host linux(from ubuntu):

使用的交叉編譯器:

/opt/FriendlyARM/toolchains/4.5.1/bin/arm-none-linux-gnueabi/bin

gcc version 4.5.1 

先開始libCurl 的移植過程:

下載curl-7.20.0.tar.bz2解壓至本目錄,開始configure,由於之前一直髮現配置不過,出現多次錯誤,這裡直接給出正確的配置:

./configure --prefix=/win/530/curl/build --build=i686-linux --host=arm-linuxCC=/opt/FriendlyARM/toolchains/4.5.1/bin/arm-none-linux-gnueabi/bin/arm-linux-gccCFLAGS='-Os' --enable-debug  --enable-optimize  --enable-static --disable-ftp --without-zlib  --disable-rtsp --disable-dict --disable-proxy --disable-telnet  --disable-tftp   --disable-pop3   --disable-imap   --disable-smtp   --disable-ipv6  --enable-http   -enable-crypto-auth  --without-gnutls --without-nss --without-ca-bundle --with-random=/dev/urandom export 

LDFLAGS="-static -L/opt/FriendlyARM/toolchains/4.5.1/bin/arm-none-linux-gnueabi/lib" &&LDFLAGS="-static -L/opt/FriendlyARM/toolchains/4.5.1/bin/arm-none-linux-gnueabi/lib"

其中,LDFLAGS中-L 後面的路徑即為你arm-linux-gcc中lib的存放路徑。

上面configure中指令用紅色標出來的地方,是需要按照你本地的路徑進行修改的。

編譯安裝

make clean &&make && make install

相關推薦

libcurl編譯包括x86ARM版本

由於專案中需要使用libcurl庫,所以就在網上搜羅了一些如何編譯出x86版本和ARM版本的libcurl庫。 首先給出如何使用原始碼來編譯出x86版本的庫。 一、下載:libcurl http://curl.haxx.se/download/curl-7.21.1.t

Android微信支付詳細流程包括手機端伺服器端

相關檔案下載地址:http://download.csdn.net/detail/s_alics/9383437點選開啟連結 **************************************************************************

c# web介面呼叫使用者控制元件包括前臺呼叫後臺呼叫

1)web介面前臺程式碼 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits=

IP編址包括網路地址廣播地址

1.總述 IP地址使用32位二進數表示,每一個主機或路由器的介面都有全域性唯一的IP地址(NAT是個例外),它由網路號(NetID)和主機號(HostID)組成,它可以分為五類,如下: 2.地址劃分 1)A類地址 其中A類地址的前8位是網路號,後

libcurl完全教程注意是,完全教程

本文也是翻譯官網的原文的,有些翻譯不過來我的就用原文顯示了 本文嘗試描述使用libcurl程式設計時的一般原則和一些基本方法,文字將主要注意力集中在C介面。 此文件將引用’the user‘作為編寫使用libcurl的原始碼的人。 這可能是你或你的位置的人

自學篇--使用keil5.23建立一個stm32工程並編譯韌體包自帶版本

之前在本科學習階段學習過一點51微控制器的知識,可是因為基本沒有實踐過幾次現在已經完全忘記了。。前幾天老師突然丟給我幾個板子說讓我把程式編譯、燒寫環境裝好,當時我就震驚了,不過經過三四天的自我摸索,之後參考他人的學習經驗,現在已經基本能處理這個問題了,所以為了方便後面的學者

windows下libcurl+openssl靜態編譯32位64位靜態-不同openssl版本

關於windows下編譯libcur相關的庫的文章是一大把,但是支援ssl的相關文章相對少一些,能按照對應要求編譯通過的更少,編譯成靜態庫的更少!再就是更不用說同事支援win64位系統的了,如下為我們開發過程中實際編譯通過的總結,一來希望後續使用人員能夠看到,為廣大網友做點實

Linux下的軟體Mysql完全解除安裝包括其依賴等殘留檔案

原文:https://blog.csdn.net/zeng308041977/article/details/75245795 使用yum安裝的時候會自動把依賴包安裝上,但是我們一般解除安裝的時候以為只要刪除之前安裝的那個包就可以了,其實不然。因為你使用yum方式安裝,其依賴包也會被自動

Windows下如何優雅的管理多個python版本以及簡易安裝相關包括機器學習PyQt

你是不是曾經被python版本困擾?你是不是曾經被安裝python的各種包嚇怕?教你一個優雅的方式------anaconda 1.什麼是anaconda(百度百科)? Anaconda指的是一個開源的Python發行版本,其包含了conda、Python等180多個科學

OCR開源文字區域定位文字識別github

一、SWT識別: yestinsong/Text-Detection( Text Detection System with MSER , SWT and Text Verification(fft and pca) ) https://github.com/yestinsong/Text-Dete

有五個學生,每個學生有3門課的成績, 從鍵盤輸入以上資料(包括姓名,三門課成績, 輸入的格式zhagnsan,30,40,60計算出總成績, 並把學生的資訊計算出的總分數高低順序存放在磁碟文

有五個學生,每個學生有3門課的成績, 從鍵盤輸入以上資料(包括姓名,三門課成績), 輸入的格式:如:zhagnsan,30,40,60計算出總成績, 並把學生的資訊和計算出的總分數高低順序存放在磁碟檔案"stud.txt"中。 1:定義一個描述學生的類2定義一個操作學生的工

PL/SQL Developer的安裝及配置OCI包括漢化快捷鍵失效問題的解決

安裝 1.下載安裝不多說 2.破解 開啟Developer,開啟幫助(Help)中的註冊(Register),對照著破解工具中,輸入產品代號(Product Code)、序列號(Serial Number)、密碼(Password),即可破解。 3.配置OCI庫以連線遠端資料庫

CentOSUbuntu下安裝配置Greenplum資料庫叢集包括安裝包原始碼編譯安裝

首先說一下,無論是CentOS/RedHat還是Ubuntu都可以按原始碼方式、安裝包方式編譯安裝。 1.   規劃 192.168.4.93(h93)       1個主master  2個主segment、2個映象segment 192.168.4.94(h94) 

c++編譯 .obj, .lib, .dll, .exe的關係libDLL的區別

(1)lib是編譯時需要的,dll是執行時需要的。  如果要完成原始碼的編譯,有lib就夠了。  如果也使動態連線的程式執行起來,有dll就夠了。  在開發和除錯階段,當然最好都有。  (2)一般的動態庫程式有lib檔案和dll檔案。lib檔案是必須在編譯期就連線到應用程式中的,而dll檔案是執行期才會被呼叫

caffe安裝,編譯包括CUDAcuDNN的安裝,並訓練,測試自己的資料caffe使用教程

caffe是一個非常清晰且高效的深度學習框架,目前有著不少的使用者,也漸漸的形成了自己的社群,社群上可以討論相關的問題。 我從開始看深度學習的相關內容到能夠用caffe訓練測試自己的資料,看了不少網站,教程和部落格,也走了不少彎路,在此把整個流程梳理和總結一遍,以期望可以可

訪問控制安全機制及相關模型包括強制訪問控制自主訪問控制

緒論   訪問控制,作為提供資訊保安保障的主要手段,及最為突出的安全機制, 被廣泛地應用於防火牆、檔案訪問、VPN及物理安全等多個方面。 所有這些技術可歸諸於幾類訪問控制模型,本文將一一介紹並以例項說明,以幫助設計者在多變的環境中解決相關安全問題。 第一章 訪問控制的概念   訪問控制是資訊保安保

java-String類中的各字符串判斷包括" "null的區別

mos 大小 既然 main 引用數據類型 同時 ins emp gpo package com.day7.one; public class DemoString1 {   /**   * @param args   * 1.boolean equals(Objec

JAVA中分為基本數據類型及引用數據類型問題棧的區別,系統根據什麽區分堆棧內存

復雜 復合 小寫 name 布爾 語言 內存空間 結構 抽象 一、基本數據類型: byte:Java中最小的數據類型,在內存中占8位(bit),即1個字節,取值範圍-128~127,默認值0 short:短整型,在內存中占16位,即2個字節,取值範圍-32768~32717

使用truelicense實現用於JAVA工程license機制包括license生成驗證

參數 cat this false sem inf import 存儲密碼 dos命令 開發的軟件產品在交付使用的時候,往往會授權一段時間的試用期,這個時候license就派上用場了。不同於在代碼中直接加上時間約束,需要重新授權的時候使用license可以避免修改源碼,改

Java小遊戲DanceWithStars修改本地文件中的圖片圖片寬高圖片型別以及將圖片設定為JButton的影象

1. 修改本地文件中的圖片(圖片寬高和圖片型別) 為了使下載的圖片素材都具有統一的width和height,需要對下載來的圖片重新處理並另存 主要思想是:構造一個BufferedImage物件,用ImageIO.read()讀入,再用ImageIO.write()重畫 程式碼如下: 1 pac