交叉編譯openssl及curl

操作環境:Ubuntu20.04

IDE工具:Clion2020.2

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

openssl下載地址:https://openssl-library.org/source/old/index.html

直接交叉編譯curl會報錯找不到openssl,所以需要先交叉編譯openssl

1. 交叉編譯openssl

openssl源碼文件夾建立腳本build.sh,其中cross-compile-prefix填入交叉編譯工具鏈的前綴(包括前面的絕對路徑),然后在這個openssl路徑下運行build.sh即可。

  # 設置編譯文件夾、安裝文件夾build_dir=$PWD/buildinstall_dir=$PWD/dirmkdir -p $build_dircd $build_dir# 清除之前的編譯內容make clean../config no-asm shared no-async \--prefix=$install_dir \--cross-compile-prefix=/usr/local/crosstoolchains/gcc-linaro-7.3.1-2018.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-# 遞歸替換當前目錄及子目錄所有 Makefile 中的 -m64find . -name "Makefile" -exec sed -i 's/-m64//g' {} \;# 編譯并安裝make -j $(nproc)make install

在這里插入圖片描述

運行完成,openssl源碼文件夾內會出現builddir文件夾,所有的編譯內容會存放在build文件夾,最終編譯出來的庫文件、可執行文件被安裝到了dir文件夾里面

在這里插入圖片描述

2. 交叉編譯curl

  1. 設置clion的交叉編譯工具鏈

在這里插入圖片描述

在這里插入圖片描述

  1. 接下來設置cmake選項,將以下的兩條內容都放在cmake選項里面即可,其中-DOPENSSL_ROOT_DIR是找安裝openssl的根目錄,也就是上一步剛剛編譯出來的openssl的安裝文件夾,-DCMAKE_INSTALL_PREFIX決定curl安裝到哪里。
-DOPENSSL_ROOT_DIR=/home/xjgc/test/openssl-1.1.1w/dir
-DCMAKE_INSTALL_PREFIX=./target

在這里插入圖片描述

  1. 點擊curl文件夾中的CMakeLists.txt,右鍵加載cmake項目,并選擇curl進行編譯

在這里插入圖片描述

在這里插入圖片描述

如果在cmake-build-debug文件夾下執行make install,那么將會被安裝到我們指定的安裝路徑(-DCMAKE_INSTALL_PREFIX參數指定的)

在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/72660.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/72660.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/72660.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

MDM 如何徹底改變醫療設備的遠程管理

在現代醫療行業迅速發展的格局中,醫院和診所越來越依賴諸如醫療平板和移動工作站等移動設備。這些設備在提高工作效率和提供卓越的患者護理方面發揮著關鍵作用。然而,隨著它們的廣泛使用,也帶來了一系列挑戰,例如在不同地點確保數…

零基礎C語言學習日志22(自定義類型:聯合和枚舉)

目錄 聯合體 聯合體類型的聲明 聯合體的特點 相同成員聯合體和結構體的對比 聯合體大小的計算 例子 枚舉類型 枚舉類型的聲明 枚舉類型的優點 枚舉類型的使用 聯合體 聯合體類型的聲明 像結構體一樣,聯合體也是由一個或者多個成員構成,這些成…

天津大學02-深度解讀DeepSeek:部署、使用、安全【文末附下載鏈接】

大模型風險與不當用例——價值觀錯位 大模型與人類價值觀、期望之間的不一致而導致的安全問題,包含:? 社會偏見(Social Bias)LLM在生成文本時強化對特定社會群體的刻板印象,例如將穆斯林與恐怖主義關聯,或…

[C語言日寄] 字符串操作函數的使用及其拓展

【作者主頁】siy2333 【專欄介紹】?c語言日寄?:這是一個專注于C語言刷題的專欄,精選題目,搭配詳細題解、拓展算法。從基礎語法到復雜算法,題目涉及的知識點全面覆蓋,助力你系統提升。無論你是初學者,還是…

Qt 進度條與多線程應用、基于 Qt 的文件復制工具開發

練習1:Qt 進度條與多線程應用 題目描述 開發一個基于 Qt 的應用程序,該應用程序包含一個水平進度條(QSlider),并且需要通過多線程來更新進度條的值。請根據以下要求完成代碼: 界面設計: 使用 QS…

Gartner:數據安全平臺DSP提升數據流轉及使用安全

2025 年 1 月 7 日,Gartner 發布“China Context:Market Guide for Data Security Platforms”(《數據安全平臺市場指南——中國篇》,以下簡稱指南),報告主要聚焦中國數據安全平臺(Data Securit…

道可云人工智能每日資訊|《奇遇三星堆》VR沉浸探索展(淮安站)開展

道可云元宇宙每日簡報(2025年3月5日)訊,今日元宇宙新鮮事有: 《奇遇三星堆》VR沉浸探索展(淮安站)開展 近日,《奇遇三星堆》VR沉浸探索展(淮安站)開展。該展將三星堆文…

Spring AI Alibaba + Ollama:國產大模型DeepSeek LLM的低成本AI應用開發認知

寫在前面 官方文檔很詳細,有開發需求可以直接看文檔https://java2ai.com/docs/1.0.0-M5.1/get-started/博文內容為一個開發Demo,以及API簡單認知理解不足小伙伴幫忙指正 😃,生活加油 我看遠山,遠山悲憫 持續分享技術干貨&#xf…

解決:Word 保存文檔失敗,重啟電腦后,Word 在試圖打開文件時遇到錯誤

殺千刀的微軟,設計的 Word 是個幾把,用 LaTex 寫完公式,然后保存,卡的飛起 我看文檔卡了很久,就關閉文檔,然后 TMD 腦抽了重啟電腦 重啟之后,文檔打不開了,顯示 殺千刀的&#xff…

掌握高效大模型任務流搭建術(二):鏈式流程如何賦能 AI 處理能力提升

前言: 在上一篇文章中,我們初步探索了 LangChain 的基礎鏈式操作——LLMChain。它巧妙地將大語言模型(LLM)與提示模板(Prompt Template)相結合,為模型交互邏輯的封裝提供了一種簡潔而高效的方式…

虛擬卡 WildCard (野卡) 保姆級開卡教程

本文首發于只抄博客,歡迎點擊原文鏈接了解更多內容。 前言 本篇教程為 WildCard 的介紹以及開卡教學,要了解不同平臺(Grok、Talkatone 等)的訂閱方式請移步《訂閱教程》分類 當我們想要充值國外平臺會員時,一般都需要使…

計算機數據庫三級刷題總結(博主89分已過,總結的內容分享)

計算機數據庫三級刷題總結(博主89分已過,總結的內容分享) 文章目錄 計算機數據庫三級刷題總結(博主89分已過,總結的內容分享)一、 數據庫設計階段二、事務相關三、數據庫設計順序四、數據庫三級模式與二層映…

記錄一些面試遇到的問題

重載和重寫的區別 重載是overload,覆蓋是override 重載屬于編譯時多態,覆蓋屬于運行時多態 運行時多態和編譯時多態 運行時多態指的是在運行的時候才知道要調用哪一個函數,編譯時多態是指在編譯的時候就知道調用哪一個函數。 運行時多態…

HBuilder X 使用 TortoiseSVN 設置快捷鍵方法

HBuilder X 使用 TortoiseSVN 設置快捷鍵方法 單文件:(上鎖,解鎖,提交,更新) 安裝好 TortoiseSVN ,或者 按圖操作: 1,工具欄中 【自定義快捷鍵】 2,點擊 默認的快捷鍵設置&…

JmeterHttp請求頭管理出現Unsupported Media Type問題解決

JmeterHttp請求頭管理出現Unsupported Media Type問題解決 大多數的app與pc端壓測的時候都會出現這種情況 當我們在jemter測試當中當中遇見Unsupported Media Type,有一種可能就是我們請求的網頁的content-Type的類型與我們測試的時候的類型不一致 解決方法 可以添…

Spring AI 1.0.0-M6 快速開始(一)

Spring AI 1.0.0-M6 入門一、存儲庫二、依賴管理完整maven 入門 Spring 是JAVA中我們經常使用的框架之一,Spring AI不斷的發展迭代目前已經到M6版本據說上半年會出一個穩定版本。 本節提供了如何開始使用Spring AI的M6。 一、存儲庫 1.0 M6 -添加Spring存儲庫 需…

頂點著色器和片段著色器

在Unity渲染中,**頂點著色器(Vertex Shader)和片段著色器(Fragment Shader)**是圖形渲染管線中的兩個核心階段。我們可以通過一個比喻來理解它們的分工:想象你要畫一幅由三角形組成的3D模型,頂點…

Impacket工具中的橫向滲透利器及其使用場景對比詳解

在滲透測試中,橫向移動(Lateral Movement)是指攻擊者在獲得一個系統的控制權限后,通過網絡進一步滲透到其他系統的過程。Impacket 是一款強大的滲透測試工具集,提供了多種實現橫向滲透的腳本,常見的工具包括…

設計模式|策略模式 Strategy Pattern 詳解

目錄 一、策略模式概述二、策略模式的實現2.1 策略接口2.2 具體策略類2.3 上下文類2.4 客戶端代碼2.5 UML類圖2.6 UML時序圖 三、優缺點3.1 ?優點3.2 ? 缺點 四、最佳實踐場景4.1 適合場景描述4.2 具體場景 五、擴展5.1 繼承復用機制和復合策略5.2 對象管理:優化策…

迷你世界腳本顯示板管理接口:DisPlayBoard

顯示板管理接口:DisPlayBoard 迷你世界 更新時間: 2023-04-26 10:21:14 具體函數名及描述如下: 序號 函數名 函數描述 1 showBoard(...) 對玩家顯示顯示板 2 hideBoard(...) 對玩家隱藏顯示板 3 setBoardPicture 對玩家設置顯示板的圖片…