靜態編譯與動態編譯的區別

2022-03-30 00:08:53 字數 432 閱讀 9765

靜態編譯與動態編譯的區別

動態鏈結庫

動態:有

靜態:無 

動態編譯 

動態編譯的可執行檔案

需要附帶乙個的動態鏈結庫

,在執行時,需要呼叫其對應動態鏈結庫中的命令。

優點:一方面是縮小了執行檔案本身的體積;

一方面是加快了編譯速度,節省了系統資源。

缺點:二是如果其他計算機上沒有安裝對應的執行庫,則用動態編譯的可執行檔案就不能執行。

靜態編譯

靜態編譯就是編譯器在編譯可執行檔案的時候,將可執行檔案需要呼叫的對應動態鏈結庫(.so)中的部分提取出來,鏈結到可執行檔案中去,使可執行檔案在執行的時候不依賴於動態鏈結庫。所以其優缺點與動態編譯的可執行檔案正好互補。

靜態編譯與動態編譯的區別

靜態編譯與動態編譯的區別 動態編譯的可執行檔案需要附帶乙個的動態鏈結庫,在執行時,需要呼叫其對應動態鏈結庫中的命令。所以其優點一方面是縮小了執行檔案本身的體積,另一方面是加快了編譯速度,節省了系統資源。缺點一是哪怕是很簡單的程式,只用到了鏈結庫中的一兩條命令,也需要附帶乙個相對龐大的鏈結庫 二是如果...

apache動態編譯 靜態編譯區別

以前編譯apache的時候 都是google搜尋到的直接拿來用 這次自己編譯mod rewrite和ssl遇到了問題 又不知道問題出在 乙個是mod rewrite模組沒有起作用 乙個是以ssl啟動apache的時候報告如下錯誤 後來經過查詢 明白了問題出在 當時我是這麼編譯apache的 conf...

busybox動態編譯靜態編譯的區別

busy box選擇靜態編譯的話,命令和工具集不需要動態載入lib裡面的庫,所以在製作根檔案系統的時候就不需要往裡面新增庫檔案,省了這一步雖然方便,但是這樣的話,你做的根檔案系統就不能執行動態鏈結的程式了,因為你的開發板裡面沒有庫啊,為了能夠執行動態鏈結的程式,你把arm linux gcc裡面的庫...