交叉工具鏈
1. 交叉編譯:嵌入式系統開發採用交叉開發模式,是a機器上編譯生成,執行在b機器上。兩個機子有不同的機器指令。
2. 工具鏈:可能指編譯、彙編、鏈結等一整套工具。
3. 作用:編譯的程式才能在目標機上執行,用gcc編譯的程式無法在目標機上執行。
4. 安裝
a) 解壓工具鏈到跟目錄下tar xvzf arm-linux-gcc-4.3.2.tar.gz –c /
i. -c表示解壓到某個目錄下
b) 修改/etc/profile ,新增pathmunge /opt/friendlyarm/toolschain/4.5.1/bin
i. 根據具體的解壓路徑修改上面的位址
ii. 否則每次使用時都得加上路徑
c) 執行source /etc/profile 使生效
5. 交叉工具鏈中幾個主要的命令:
a) 工具都存放在/opt/friendlyarm/toolschain/4.5.1/bin目錄中
b) 編譯器:arm-linux-gcc 例:arm-linux-gcc hello.c –o hello
c) 反彙編工具:需要有編譯好的**
i. 作用:用來觀察組合語言的**
ii. arm-linux-objdump 例arm-linux-objdump –d –s hello
iii. 以上情況會直接輸出彙編**,若在末尾加hello.log表示輸出到這樣乙個檔案裡去
d) elf檔案檢視工具:arm-linux-readelf
i. elf檔案:arm-linux-gcc 編譯出來的檔案的格式
ii. arm-linux-readelf –a hello 檢視elf的頭資訊,關注data大小端和machine目標機是否符合要求
iii. arm-linux-readelf –d hello 檢視hello使用的動態庫shared library
LINUX學習筆記22 交叉工具鏈
交叉工具鏈 1.交叉編譯 嵌入式系統開發採用交叉開發模式,是a機器上編譯生成,執行在b機器上。兩個機子有不同的機器指令。3.作用 編譯的程式才能在目標機上執行,用gcc編譯的程式無法在目標機上執行。4.安裝 a 解壓工具鏈到跟目錄下tar xvzf arm linux gcc 4.3.2.tar.g...
C 學習筆記 22
在c 中,auto ptr是乙個類,它用來實現對動態分配物件的自動釋放。建構函式與析構函式 auto ptr在構造時獲取對某個物件的所有權 ownership 在析構時釋放該物件。我們可以這樣使用auto ptr來提高 安全性,類似下面的 int p new int 0 auto ptr ap p ...
Python學習筆記 22
物件導向三大特徵及作用 多型我自己簡單總結一句話 使用方法 或者其他 時,不用考慮物件型別,適用性強,比如常見的len 多型 狗 哈士奇,泰迪,金毛。乙個物件可以以不同的形態去呈現 classa def init self,name self.name name property defname s...