我聽很多人說從原始碼建置/編譯可以最佳化效能,因為編譯器能夠微調系統的效能。
另一方面,像 之類的套件管理器也支援安裝包apt-get
,它們也會顯示正在下載原始碼並編譯它們的訊息。
那麼兩者在背景上有什麼差別呢?
答案1
主要區別是:
當您取得原始程式碼並在您的系統上進行編譯時,您可以使結果更適合您的系統,在編譯過程中使用標誌使其了解您的 CPU、GPU、現有程式庫等。
下載的二進位檔案已編譯為可在大多數環境下運行,因此未針對特定環境進行最佳化。
答案2
當您從原始程式碼編譯時,您從 Github 儲存庫或網站下載原始程式碼,解壓縮它,執行 ./configure、make、make install。我將解釋這些命令:
./configure
檢查依賴關係,如果您安裝了某些庫等,並將某些行新增至建置組態中。
make
實際上使用“./configure”提供的配置從原始程式碼產生二進位檔案。
最後make install
將二進位檔案安裝到您的電腦上。
當您用於apt-get
安裝應用程式時,它會下載已編譯的二進位文件,並將其安裝到您的電腦上。
您可以用來apt-get
下載原始程式碼,並且可以用它做任何您想做的事情。