您好,登錄后才能下訂單哦!
今天給大家介紹一下Linux系統如何實現分布式編譯。文章的內容小編覺得不錯,現在給大家分享一下,覺得有需要的朋友可以了解一下,希望對大家有所幫助,下面跟著小編的思路一起來閱讀吧。
分布式編譯一般通過TCP或SSH等協議將編譯任務分配至網絡中不同的計算機上,使這些計算機協同完成編譯工作。Linux內核可以使用distcc[1]進行分布式編譯。
distcc是一個通過網絡中的多臺計算機對C、C++、Objective C或Objective C++代碼進行分布式編譯的程序。distcc是一款編譯速度快且容易安裝的分布式編譯工具,它能產生和本地編譯一致的編譯結果。理論上使用distcc進行分布式編譯相對于本地編譯的最大加速比為3.0x,但在實際使用中加速比會低于這一理論值。
distcc并不要求所有的機器共享一個文件系統或有同步的時鐘,也不要求它們有相同的library或頭文件。當安裝了交叉編譯器時,distcc甚至不需要這些機器有相同的處理器或操作系統。
為了搭建基于distcc的Linux內核分布式編譯環境,我們在Ubuntu 18.04環境下首先使用命令下載distcc v3.3.3版:
wget -O distcc-3.3.3.tar.gz https://codeload.github.com/distcc/distcc/tar.gz/v3.3.3
然后解壓源碼包:
tar -xvf distcc-3.3.3.tar.gz
進入distcc-3.3.3目錄后,有一個INSTALL文件。打開INSTALL文件,文件里面記錄了distcc-3.3.3的安裝和配置過程。
在安裝distcc-3.3.3之前,我們首先要安裝一些依賴項:
sudo apt-get install gcc make python3 python3-dev libiberty-dev sudo apt-get install autoconf
然后進行配置:
./autogen.sh ./configure
接著進行編譯:
make make check
使用make check命令可以看到哪些功能被編譯了而哪些沒有:
安裝相關的軟件可以使與相關功能有關的選項由NOTRUN變為OK。例如,若發現Gdb_Case選項由于GDB沒有安裝而為NOTRUN,則可以安裝GDB,之后再次運行make check該選項會變為OK。
然后就可以安裝了:
sudo make install make installcheck sudo update-distcc-symlinks
當安裝或卸載編譯器時需要再次運行最后一個命令。
以上就是Linux系統如何實現分布式編譯的全部內容了,更多與Linux系統如何實現分布式編譯相關的內容可以搜索億速云之前的文章或者瀏覽下面的文章進行學習哈!相信小編會給大家增添更多知識,希望大家能夠支持一下億速云!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。