嵌入式移植jpeglib--Linux交叉編譯ARM平臺

一 、交叉編譯jpeg庫

1.下載源碼tar.gz
2. 源碼目錄下執行 jpeglib配置文件

./configure CC=arm-none-linux-gnueabihf-gcc LD=arm-none-linux-gnueabihf-ld --prefix=/work/jpeg_arm_lib --exec-prefix=/work/jpeg_arm_lib --enable-shared --enable-static --host=arm-none-linux-gnueabihf
符號說明
CC編譯所使用的編譯器
LD編譯所使用的鏈接器
Prefixjpeglib庫的安裝目錄
Exec-prefix可執行文件的目錄
Enable-shared編譯為動態庫
Enable-static編譯為靜態庫

3.make 編譯、 sudo make install安裝
在這里插入圖片描述

二、Linux下jpeg庫移植-編譯APP

1.確定交叉編譯器安裝成功并配置到環境目錄

arm-none-linux-gnueabihf-gcc -v

在這里插入圖片描述
2.Makefile文件添加編譯連接路徑

LDFLAGS := -L/work/jpeg_arm_lib/lib -ljpeg

3.交叉編譯的時候頭文件默認搜索路徑與正常編譯有所不同,要先確定交叉編譯器的目錄

echc'main(){}'| /usr/local/arm/gcc-arm-9.2-2019.12-x86_64-arm-none-linux-gnueabihf/bin/arm-none-linux-gnueabihf-gcc -E -v-

在這里插入圖片描述

4.將/work/jpeg_arm_lib/include頭文件拷貝到交叉編譯器的目錄
在這里插入圖片描述
5.Make 編譯App文件

三、開發板下jpeg庫移植-運行APP

.將編譯后的庫文件移動到開發板掛載文件目錄
將/work/jpeg_arm_lib下庫文件,tar打包復制到,開發板掛載文件目錄/usr/lib下
(使用Buildroot構建的根文件系統下可能有jpeg庫,刪除后使用新編譯得到的)

sudo tar -czf lib.tar.gz ./*
sudo tar -xzf lib.tar.gz -c /home/jcl/linux/nfs/rootfs/usr/lib

測試

將/work/jpeg_arm_lib下, bin 目錄下的所有測試工具拷貝到開發板
開發板運行djpeg -help 有反應代表移植成功
在這里插入圖片描述

參考教程:
https://blog.csdn.net/chengfei609/article/details/46318275
https://cloud.tencent.com/developer/article/1997282
https://blog.csdn.net/qq_53144843/article/details/124524969

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

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

相關文章

經典文獻閱讀之--MGS-SLAM(單目稀疏跟蹤和高斯映射與深度平滑正則化)

Tip: 如果你在進行深度學習、自動駕駛、模型推理、微調或AI繪畫出圖等任務,并且需要GPU資源,可以考慮使用UCloud云計算旗下的Compshare的GPU算力云平臺。他們提供高性價比的4090 GPU,按時收費每卡2.6元,月卡只需要1.7元每小時&…

CiteScore 2023發布,AI Open斬獲45分,位列全球計算機領域前1%

與影響因子(IF)一樣,引用分數(CiteScore)同樣是衡量學術期刊影響力的重要指標之一,且大有趕超前者的勢頭。 6 月 6 日,CiteScore 2023 正式發布,人工智能領域可自由訪問的期刊平臺 …

Java 8 中的 Stream API,用于處理集合數據

Java 8 引入了 Stream API,使得處理集合數據變得更加簡潔和高效。Stream API 允許開發者以聲明式編程風格操作數據集合,而不是使用傳統的迭代和條件語句。 一、基本概念 1.1 什么是 Stream Stream 是 Java 8 中的一個新抽象,它允許對集合數…

CSRF 令牌的生成過程和檢查過程

在 Django 中,CSRF 令牌的生成和檢查過程是通過 Django 的 CSRF 中間件 (CsrfViewMiddleware) 和模板標簽 ({% csrf_token %}) 自動處理的。以下是詳細的生成和檢查過程: CSRF 令牌的生成過程 用戶訪問頁面: 當用戶第一次訪問頁面時,Django 會為用戶創建一個會話。如果用戶…

人工智能、深度學習和機器學習的前世今生

人工智能、深度學習和機器學習的前世今生 引言 在當今科技飛速發展的時代,人工智能(AI)、機器學習(ML)和深度學習(DL)已經成為引領第四次工業革命的重要力量。這些技術不僅在學術界和工業界掀…

C++ 數據共享與保護學習記錄【代碼】

一.項目一 1.頭文件.h //A.h #pragma once //防止頭文件被重復包含(重復包含會被重復編譯,也就是該類會被重復定義) #ifndef HEAD_H //等價于( #if !defined(HEAD_H) ) //defined是一個預處理操作符,相當于一個表達式…

整理好了!2024年最常見 20 道分布式、微服務面試題(二)

上一篇地址:整理好了!2024年最常見 20 道分布式、微服務面試題(一)-CSDN博客 三、請解釋CAP定理及其含義。 CAP定理是分布式計算領域的一個基本概念,由計算機科學家Eric Brewer在2000年提出,并由科學家Se…

力扣76.最小覆蓋子串

力扣76.最小覆蓋子串 用哈希表記錄每個字母出現次數 枚舉右端點 判斷是否能全覆蓋如果可以 并且更短 就更新 j 縮小區間再判斷 class Solution {bool is_covered(int cnt_s[], int cnt_t[]) {for (int i A; i < Z; i) {if (cnt_s[i] < cnt_t[i]) {return false;}}fo…

上網操作的必要條件

一、 網卡 1、 為什么需要網卡 計算機為了實現網絡通信&#xff0c;必須都要有網卡這個東西&#xff0c;網卡是計算機眾多外部設備之一&#xff08;其它還有硬盤、鍵盤等&#xff09;&#xff0c;計算機將數據發給網卡&#xff0c;網卡負責將數據往外發送&#xff0c;通過IP定…

技術團隊的沖突管理: 谷歌亞里士多德項目的啟示

有效的沖突管理對于技術團隊保持高效和創新的工作環境至關重要。谷歌的亞里士多德項目是一項內部研究&#xff0c;旨在了解成功團隊的因素&#xff0c;強調了心理安全和開放溝通在促進團隊成員之間的合作和解決分歧方面的重要性。本文將探討受谷歌的亞里士多德項目和其他數據點…

工廠生產計劃難以執行的真正原因及對策

在制造業中&#xff0c;生產計劃的執行對于企業的運營至關重要。然而&#xff0c;許多工廠在生產計劃執行過程中面臨著諸多挑戰&#xff0c;尤其是物料齊套率低的問題。本文將探討工廠生產計劃難以執行的真正原因&#xff0c;并提出相應的解決對策。 一、生產計劃難以執行的真…

mysql optimizer_switch : 查詢優化器優化策略深入解析

碼到三十五 &#xff1a; 個人主頁 在 MySQL 數據庫中&#xff0c;查詢優化器是一個至關重要的組件&#xff0c;它負責確定執行 SQL 查詢的最有效方法。為了提供DBA和開發者更多的靈活性和控制權&#xff0c;MySQL 引入了 optimizer_switch 系統變量。這個強大的工具允許用戶開…

nginx配置WebSocket參數wss連接

目錄 一、原文連接 二、 配置參數 三、實踐 四、重啟nginx 五、連接websocket 一、原文連接 nginx配置websocket支持wss-騰訊云開發者社區-騰訊云 二、 配置參數 map $http_upgrade $connection_upgrade { default upgrade; close; } upstream websocket { se…

聚類的外部指標(Purity, ARI, NMI, ACC) 和內部指標(NCC,Entropy,Compactness,Silhouette Index)

在聚類分析中,外部指標和內部指標用于評估聚類結果的質量。外部指標需要知道真實的類別標簽,而內部指標則僅基于聚類結果本身進行評估。 外部指標 Purity (純度): 計算聚類結果中每個簇中最多數目的樣本所屬的類別,并計算所有簇的該類別樣本數之和占所有樣本數的比例。 Pyt…

【操作系統】進程與線程的區別及總結(非常非常重要,面試必考題,其它文章可以不看,但這篇文章最后的總結你必須要看,滿滿的全是干貨......)

目錄 一、 進程1.1 PID(進程標識符)1.2 內存指針1.3 文件描述符表1.4 狀態1.5 優先級1.6 記賬信息1.7 上下文 二、線程三、總結&#xff1a;進程和線程之間的區別&#xff08;非常非常非常重要&#xff0c;面試必考題&#xff09; 一、 進程 簡單來介紹一下什么是進程&#xf…

win 系統 cmd 命令從私庫上傳,下載jar包

1. 確保maven環境變量或者maven安裝無誤&#xff1b; 2.私庫下載 命令 mvn dependency:get -DgroupId<your_group_id> -DartifactId<your_artifact_id> -Dversion<your_version> -Dpackagingjar -Dfile<path_to_your_jar_file> -Durl<your_privat…

寫入文件內容

自學python如何成為大佬(目錄):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在實例01中&#xff0c;雖然創建并打開一個文件&#xff0c;但是該文件中并沒有任何內容&#xff0c;它的大小是0KB。Python的文件對象提供了write()…

【電路筆記】-分貝

分貝 分貝是以 10 為底的對數比,用于表示電路中功率、電壓或電流的增加或減少。 1、概述 一般來說,分貝是響度的度量。 在設計或使用放大器和濾波器電路時,計算中使用的一些數字可能非常大或非常小。 例如,如果我們將兩個放大器級級聯在一起,功率或電壓增益分別為 20 和…

os和os.path模塊

自學python如何成為大佬(目錄):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 目錄也稱文件夾&#xff0c;用于分層保存文件。通過目錄可以分門別類地存放文件。我們也可以通過目錄快速找到想要的文件。在Python中&#xff0c;并…

033.搜索旋轉排序數組

題意 整數數組 nums 按升序排列&#xff0c;數組中的值 互不相同 。 在傳遞給方法之前&#xff0c;nums 在預先未知的某個下標 k(0 < k < nums.length)上進行了旋轉&#xff0c;使數組變為 [nums[k], nums[k1], ..., nums[n-1], nums[0], nums[1], ..., nums[k-1]]&…