arm linux ld鏈結工具介紹

2021-08-18 09:15:11 字數 866 閱讀 8174

arm-linux-ld是乙個鏈結程式工具,其作用主要是將彙編過的多個二進位制檔案進行鏈結,成為乙個可執行的二進位制檔案,這個命令的選項有好多,具體用到的時候大家可以使用--help 選項來檢視具體的選項用法。

選項用法選項用法:

下面將幾個重要的命令介紹一下:

-t file    --script file指定乙個鏈結器指令碼檔案,指示編譯器按照指令碼進行鏈結;

-tbss address    bss段的鏈結位址;

-ttext address   **段鏈結位址;

-tdata address  資料段鏈結位址;

-r --relocateable 產生可重定向的輸出,比如,產生乙個輸出檔案它可再次作為『ld'的輸入,這經常被叫做「部分鏈結」,當我們需要將幾個小的.o檔案鏈結成為乙個.o檔案的時候,需要使用此選項。

-e  指定程式的入口標號;

-l   libname 指定要鏈結的庫;

-l  directory 增加庫檔案的搜尋路徑;

-o  file 設定輸出檔名;

-o  輸出檔案最優;

-a  指定arch體系;

例如:arm-linux-ld -ttext 0x10000000 main.o -o main_elf

這句話是將main.o 檔案連線成elf格式檔案,在連線的過程中,-ttext 0x10000000這個選項告訴聯結器我的這段main.o程式需要被載入到ram的0x10000000位址處執行。所以在連線的時候main.o第一條語句的連線位址就是0x10000000,第二條語句就是跟在其後面。有很多人都議論連線位址和執行位址這個怎麼說的都有。執行位址可以等於連線位址,還可以認為執行位址是pc指標指向的位址,就是正在執行指令的位址。只要理解了這個概念就可以了。

工具鏈結redis

redisdesktopmanager 鏈結 檔案位置 usr loca redis etc redis.conf 一 注釋redis.conf檔案中的 bind 127.0.0.1 在一段文字之前打 號為注釋 二 設定密碼。為了安全一定要設,而且這裡如果不繫結ip也不設密碼的話,redis是預設保...

工具鏈結redis

redisdesktopmanager 鏈結 檔案位置 usr loca redis etc redis.conf 一 注釋redis.conf檔案中的 bind 127.0.0.1 在一段文字之前打 號為注釋 二 設定密碼。為了安全一定要設,而且這裡如果不繫結ip也不設密碼的話,redis是預設保...

工具鏈結 環境搭建

vue cli 2安裝腳手架,用於自動生成vue.js webpack的專案模板 node.js 命令列 npm install g cnpm registry install webpack g cnpm install webpack webpack cli g cnpm install vue...