當前位置:首頁 » 編程軟體 » linux什麼是編譯安裝

linux什麼是編譯安裝

發布時間: 2024-10-03 01:40:34

linux上的編譯安裝的基本概念是什麼,具體的流程又是怎麼個樣子

計算機運行的程序都是二進制的代碼,那麼我們所用的編程語言都是自然語言中的字元,那麼就需要有一種機制來將這些轉化成二進制代碼,那麼根據轉化機制不一樣,編程語言(軟體 產生的源頭)分兩大類 解釋型 編譯型,解釋型就不說了,編譯型就是在寫好程序的源碼以後對程序進行編譯,編譯成二進制的可執行代碼。
在linux中很多軟體的源碼都會伴隨著軟體一起發布,軟體就是經過編譯的一些二進制的文件,這些二進制文件由源碼編譯而來。所以當我們拿到了軟體的源碼的時候,可以根據源碼編譯出軟體,然後對軟體進行安裝,這就是你所說的編譯安裝了,對於非電腦專業的人不需要了解那麼多,涉及的東西比較多,要知道在編譯的時候需要設置編譯參數的,,
所以會拿deb rpm包來安裝就行了。。使用打包好的二進制包安裝的另外的好處就是可以由包管理系統進行管理可以方便的對軟體包進行安裝升級和卸載,如果是源碼編譯那麼就需要自己手動的管理了。
具體的流程沒那麼復雜,linux軟體發布的源碼都是有標准格式 的,通常是tar.gz tar.bz2這樣的壓縮包,
tar xvf xxx.tar.gz 解壓源碼包
cd xxx 進入源碼目錄
more INSTALL 或者more README 閱讀源碼包里的安裝說明,看不懂英語的可以跳過這步
./configure 參數 配置編譯參數;最常見的是prefix=安裝路徑 這樣可以把軟體安裝到一個指定目錄而不是安裝到系統的文件結構中(linux的文件結構可以參考FHS標准規范里的定義)
make 當上一步正確的執行後會生成一個Makefile文件,使用make命令可以對軟體源碼進行編譯
make install 安裝(可能會需要root許可權)
//部分軟體還會提供make test 這樣的測試,在安裝前可以運行make test 來測試軟體是否編譯正確。

② Linux中伺服器軟體為什麼需要編譯安裝

伺服器CPU事實已經被Intel壟斷了,就那麼幾種型號,編來編去生成的機器碼是一樣的。Intel宣傳自己的編譯工具Intel C++ Compiler 比GCC編譯出來性能要提升10%-20%,這就是一廣告,生產環境很少用人用它,何況它還要收費
性能真不是問題,比如 strip 命令可以大大減小可執行文件的size,但是我裝過幾千遍軟體,都沒有見有人在安裝腳本裡面使用。
軟體需要編譯安裝的真實理由有如下3點:
1.軟體在編譯期間需要配置,比如說nginx,需要在編譯的時候指定包含哪些mole,php,apache 也是一樣。
同樣的是資料庫,mysql 通過編譯安裝,因為要定製存儲引擎(是否支持innodb .. ),而sqlite卻絕少有人編譯,都是直接下載二進制文件來用。
2.軟體需要統一安裝路徑,每個team都會自己的安裝目錄約定,有些喜歡裝在 /opt/下面,有些喜歡裝在 /usr/local/ ,編譯安裝可以方便的指定這些路徑(configure --prefix=xxx )

3.需要最新的版本,軟體倉庫的版本一般都比較低,這個理由其實不充分,生產環境傾向保守,不追求最新版本,但是對於geek來說,這可能是最重要的原因
弄明白原因之後,就很容易判斷編譯還是下載:
nginx/apache/php/mysql 編譯安裝
python/ruby/java 直接下載

③ Linux中make, make install命令分別是什麼,用法

make是用來編譯的,它從Makefile中讀取指令,然後編譯。

make install是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置。

用法:

1、make:

這一步就是編譯,大多數的源代碼包都經過這一步進行編譯(當然有些perl或python編寫的軟體需要調用perl或python來進行編譯)。

如果 在 make 過程中出現 error ,就要記下錯誤代碼(注意不僅僅是最後一行),然後可以向開發者提交 bugreport(一般在 INSTALL 里有提交地址)。

或者系統少了一些依賴庫等,這些需要自己仔細研究錯誤代碼。

make 的作用是開始進行源代碼編譯,以及一些功能的提供,這些功能由他的 Makefile 設置文件提供相關的功能。

比如 make install 一般表示進行安裝,make uninstall 是卸載,不加參數就是默認的進行源代碼編譯。

make 是 Linux 開發套件裡面自動化編譯的一個控製程序,他通過藉助 Makefile 裡面編寫的編譯規范進行自動化的調用 gcc 、ld 以及運行某些需要的程序進行編譯的程序。

一般情況下,他所使用的 Makefile 控制代碼,由 configure 這個設置腳本根據給定的參數和系統環境生成。

2、make install

這條命令來進行安裝(當然有些軟體需要先運行 make check 或 make test來進行一些測試),這一步一般需要你有 root 許可權(因為要向系統寫入文件)。

(3)linux什麼是編譯安裝擴展閱讀

當我們在使用make命令時,常常會在make後面加上其他單詞,比如check,install,installcheck…這些單詞都是make的參數,我們稱之為「目標(targets)」。

最常見的幾個目標:

make all:編譯程序、庫、文檔等(等同於make)

make install:安裝已經編譯好的程序。復制文件樹中到文件到指定的位置

make unistall:卸載已經安裝的程序。

make clean:刪除由make命令產生的文件

make distclean:刪除由./configure產生的文件

make check:測試剛剛編譯的軟體(某些程序可能不支持)

make installcheck:檢查安裝的庫和程序(某些程序可能不支持)

make dist:重新打包成packname-version.tar.gz

④ 在Linux 下安裝軟體的方法有哪些各有什麼優劣

大體上有兩種方法:源代碼安裝與二進制文件安裝~
1、源代碼安裝的方法:
./configure

make && make install clean

2、二進制文件安裝:
利用各自的管理工具進行安裝,Debian系列的話有:Deb包管理工具,RedHat系列有RPM管理工具等,這樣的話就可以下載二進制文件如:.deb或者.rpm到電腦,然後雙擊文件就可以安裝了。

優勢:
1、二進制安裝的話是利用本地電腦進行編譯安裝,這樣的安裝對於機器而言,性能肯定是比二進制安裝好因為在你的電腦上編譯時編譯器會針對您的電腦配置進行優化。
2、二進制安裝的話你不必記憶編譯安裝相關的命令只需要雙擊滑鼠就可以了,這種方法對於普通使用者而言是比較好的,並且比較方便。

⑤ linux下面yum安裝和源碼編譯安裝的區別

yum直接從伺服器下載bin文件,速度快,不用編譯。
源碼下載的是:shell

python
+
CPP
+
Head
+
Config.......
需要自己編譯安裝,速度很慢,受機器性能影響可能編譯失敗,還需要自己解決依賴庫問題。

⑥ linux下安裝文件總是提示./configure --prefix: 沒有那個文件或目錄

linux下源碼的安裝由3個步驟組成:配置(configure)、編譯(make)、安裝(make install)。

其中配置語句「./configure --prefix=/usr/local/test」提示「沒有那個文件或目錄」,是因為配置指定路徑「/usr/local/test」時,沒有這樣的文件或目錄存在。

只需在「./configure --prefix=」語句中放入一個存在的目錄路徑,重新編譯安裝即可解決。

以安裝hdf5軟體為例,具體操作步驟如下:

1、首先從官網下載hdf5,根據自己的要求下載對應的版本:hdf5-1.8.3.tar.gz。

⑦ Linux中源碼編譯安裝程序包括哪些基本步驟

第一步:創建編譯腳本
進入到源碼目錄 執行 ./configure --prefix=/.../.....(--prefix=後面是想要安裝到的目錄)
第二部:編譯
執行 make
第三部:安裝
執行 make install
當然上面這幾部都是最基本的步驟,如果想優化編譯,要在./configure 後面加參數,或者configure之後手動修改Makefile文件 如O2(優化等級) FLAGS 等編譯參數的修改。
--------------------------------------------------------------------------------------------------------------
以上都是源碼包的編譯
如果是自己寫的C代碼 直接 用gcc編譯即可。
例如 編譯test.c
執行 gcc -o test test.c即可將test.c編譯為可執行的文件 test

自己打出來的 要採納啊!

熱點內容
u盤加密啟動電腦 發布:2024-11-24 13:30:44 瀏覽:905
宣片腳本詞 發布:2024-11-24 13:30:33 瀏覽:493
pythonforif一行 發布:2024-11-24 13:28:19 瀏覽:393
伺服器集群怎麼實現 發布:2024-11-24 13:26:51 瀏覽:598
秒評源碼 發布:2024-11-24 13:24:30 瀏覽:125
聯想筆記本e450c怎麼看配置 發布:2024-11-24 13:22:23 瀏覽:86
c語言如何運行程序 發布:2024-11-24 13:20:03 瀏覽:448
訪問oracle其他用戶 發布:2024-11-24 13:18:32 瀏覽:68
年青人的游戲密碼一般是什麼 發布:2024-11-24 13:17:01 瀏覽:785
培訓室密碼是多少 發布:2024-11-24 13:16:21 瀏覽:76