linux交叉編譯命令?
安裝完交叉編譯器后輸入arm-linux-gcc命令出現(xiàn)arm-none-linux-gnueabi...
1、命令后要跟源文件名,原文件要在當(dāng)前目錄下,還要在$PATH中指定交叉編譯工具鏈的位置。
2、這種問題是因為arm-none-linux-gnueabi-gcc編譯包不完整(找不到對應(yīng)目錄的其他工具如ar、ld等),下載arm-none-linux-gnueabi-gcc完整編譯工具,然后全部拷貝到對應(yīng)目錄。
3、其實自己編譯個最新版本的交叉編譯工具,我的 core 2 dou T5450 其實也就需要三個小時搞定。
4、估計是你的arm-none-linux-gnueabi-gcc文件放到PATH路徑了,但是它本身是一個鏈接文件,實際連接到這個位置:/home/lin/kernel/arm-2010q1/bin/arm-none-linux-gnueabi-gcc,而這個文件實際是不存在的。
在linux中安裝交叉編譯器時的解包問題
1、你使用交叉編譯工具,應(yīng)該是你本地缺少libstdc++.so.6的庫文件,這個so庫是arm架構(gòu)的,不是指本地的x86的。你需要確認(rèn)你的編譯環(huán)境中包含相關(guān)arm的libstdc++.so.6庫,可以看看makefile中如何指定的。
2、不需要改源碼Makefile,只要在你的驅(qū)動目錄下配置好Makefile里面的源碼樹路徑就行了。
3、應(yīng)該是宏定義里包含了memset的調(diào)用,要不就是內(nèi)聯(lián)函數(shù)。仔細(xì)找找應(yīng)該能找到。include 肯定都是編譯器自定的默認(rèn)路徑,一般在編譯器安裝文件夾里能找到。至于庫,顯然是編譯器自己的。
4、首先保證代碼正確 2linux 根文件系統(tǒng) 還有l(wèi)ibjepg 等編譯工具要用同一個版本的交叉編譯工具。最好 這些東西全都用自己編譯的。
5、因此,當(dāng)在一個特定目標(biāo)機(jī)下運(yùn)行GCC時,GCC便在目錄路徑中查找包含該目標(biāo)規(guī)范的應(yīng)用程序路徑。GNU的目標(biāo)規(guī)范格式為CPU-PLATFORM-OS。例如,建立基于ARM平臺的交叉工具鏈,目標(biāo)平臺名為arm-linux-gnu。
如何在linux中運(yùn)行交叉編譯的程序
請聯(lián)系你的老師,如何進(jìn)行交叉編譯是嵌入式課程十分重要的基礎(chǔ)步驟。老師必須講。
首先要在Linux下交叉編譯Qte的庫,然后再將Lib這些文件移植在板子上,最后通過交叉編譯好的庫去編譯你在pc上編寫的程序,放到板子上運(yùn)行!關(guān)于交叉編譯QT的文章,網(wǎng)上可以搜到很多。
首先確定你的arm Linux有沒有這些IO的驅(qū)動,如果還沒有的話,那么你要寫這些IO的驅(qū)動;如果已經(jīng)有了,那么它們的控制就叫給你自己的應(yīng)用程序了。
因此,當(dāng)在一個特定目標(biāo)機(jī)下運(yùn)行GCC時,GCC便在目錄路徑中查找包含該目標(biāo)規(guī)范的應(yīng)用程序路徑。GNU的目標(biāo)規(guī)范格式為CPU-PLATFORM-OS。例如,建立基于ARM平臺的交叉工具鏈,目標(biāo)平臺名為arm-linux-gnu。
如何建立Linux下的ARM交叉編譯環(huán)境
1、網(wǎng)上還有一些 HOWTO 可以參考,ARM 體系結(jié)構(gòu)的《The GNU Toolchain for ARM Target HOWTO》,PowerPC 體系結(jié)構(gòu)的《Linux for PowerPC Embedded Systems HOWTO》等。對TARGET的選取可能有幫助。
2、第一點、在第一次編譯gcc的時候可能會出現(xiàn)找不到stdio.h的錯誤,解決辦法是修改gcc/config/arm/t-linux文件,在TARGET_LIBGCC2_CFLAGS變量的設(shè)定中增加-Dinhibit_libc和-D__gthr_posix_h。
3、在終端輸入arm-fsl-linux-gnueabi-并按TAB鍵,如果能夠看到很多arm-fsl-linux-gnueabi-前綴的命令,則基本可以確定交叉編譯器安裝正確,如下圖所示。
4、解壓:tar -zxvf arm-linux-gcc-9tgz 會在當(dāng)前目錄產(chǎn)生上述包的解壓文件,在這個目錄里面找到bin目錄,把這個bin目錄的絕對路徑記錄下載。
5、我在arm9下做過linux,qt編程,需要先在PC上安裝linux,然后安裝arm-linux-gcc,同時為了可以使用arm-linux-gcc來編譯程序,需要指定環(huán)境變量,這個可以在.profile等文件中進(jìn)行更改,具體辦法你查一下就知道了。

猜你喜歡LIKE
相關(guān)推薦HOT
更多>>
pythonfor循環(huán)是什么
pythonfor循環(huán)是什么在做遍歷的時候,對于一些數(shù)據(jù)的反復(fù)循環(huán)執(zhí)行,我們會用到for循環(huán)的語句。可以說這是新手入門必學(xué)的語句之一,在很多基礎(chǔ)循...詳情>>
2023-11-13 07:46:36
pythoncontextmanager()的轉(zhuǎn)換
python中contextmanager()的轉(zhuǎn)換1、說明當(dāng)發(fā)出請求時,requests庫會在將請求實際發(fā)送到目標(biāo)服務(wù)器之前準(zhǔn)備該請求。請求準(zhǔn)備包括像驗證頭信息和...詳情>>
2023-11-13 06:34:35
python使用items()遍歷鍵值對
python使用items()遍歷鍵值對字典可以用來存儲各種方式的信息,所以有很多方式可以通過字典的所有鍵值對、鍵或值。說明1、即使通過字典,鍵值對...詳情>>
2023-11-13 04:24:15
python實例方法中self的作用
python實例方法中self的作用說明1、無論是創(chuàng)建類的構(gòu)造方法還是實例方法,最少要包含一個參數(shù)self。2、通過實例的self參數(shù)與對象進(jìn)行綁定,程序...詳情>>
2023-11-13 03:46:48熱門推薦
python實現(xiàn)WSGI的框架
沸pythonfor循環(huán)是什么
熱python-=是什么意思
熱python打開文本文件有哪些方法?
新pythoncontextmanager()的轉(zhuǎn)換
pythonre是什么?
pythondecimal是什么
python列表追加元素出錯的解決
python使用loguru操作日志
python使用items()遍歷鍵值對
pythonvim中有哪些對象
python實例方法中self的作用
pythonin和is的區(qū)分
pythonos.path.join()函數(shù)的使用
技術(shù)干貨







快速通道 更多>>
-
課程介紹
點擊獲取大綱 -
就業(yè)前景
查看就業(yè)薪資 -
學(xué)習(xí)費用
了解課程價格 -
優(yōu)惠活動
領(lǐng)取優(yōu)惠券 -
學(xué)習(xí)資源
領(lǐng)3000G教程 -
師資團(tuán)隊
了解師資團(tuán)隊 -
實戰(zhàn)項目
獲取項目源碼 -
開班地區(qū)
查看來校路線