linux軟體編譯安裝
在linux系統中,如果要用源代碼包進行編譯安裝,就需要用到gcc這個工具,一般安裝系統時默認選擇都有這個工具包。可以用命令rpm -qa | grep gcc來看看是否安裝gcc。
源代碼包安裝一般分三步:
1.解壓之後,進入解壓的目錄中,運行./configure,後面還可以加參數,具體情況根據不同的軟體來設定。
2.運行make進行編譯,如果系統版本還有其他條件都支持的話,不會報什麼錯。
3.運行make install進行安裝就可以了。
㈡ 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系統中如何安裝程序、軟體的幾種方法
在Windows下安裝軟體時,只需運行軟體的安裝程序(setup、install等)或者用zip等解壓縮軟體解開即可安裝,運行反安裝程序(uninstall、unware、“卸載”等)就能將軟體清除干凈,完全圖形化的操作界面,簡單到只要用滑鼠一直點擊“下一步”就可以了。而Linux好象就不一樣了,很多的初學者都抱怨在Linux下安裝和卸載軟體非常地困難,沒有像使用Windows時那麼直觀。其實在Linux下安裝和卸載軟體也非常簡單,同樣也有安裝向導或解壓安裝的方式,不相同的只不過是除了二進制形式的軟體分發外,還有許許多多以源代碼形式分發的軟體包,下面就來詳細地講一講這些軟體的安裝與卸載:
一、二進制分發軟體包的安裝與卸載
Linux軟體的二進制分發是指事先已經編譯好二進制形式的軟體包的發布形式,其優點是安裝使用容易,缺點則是缺乏靈活性,如果該軟體包是為特定的硬體/操作系統平台編譯的,那它就不能在另外的平台或環境下正確執行。
1、*.rpm形式的二進制軟體包
安裝:rpm -ivh *.rpm
卸載:rpm -e packgename
說明:RPM(RedHat Packge Manager)是RedHat公司出的軟體包管理器,使用它可以很容易地對rpm形式的軟體包進行安裝、升級、卸載、驗證、查詢等操作,安裝簡單,而卸載時也可以將軟體安裝在多處目錄中的文件刪除干凈,因此推薦初學者盡可能使用rpm形式的軟體包。rpm的參數中-i是安裝,-v是校驗,-h是用散列符顯示安裝進度,*.rpm是軟體包的文件名(這里的*.rpm特指*.src.rpm以外的以rpm為後綴的文件);參數-e是刪除軟體包,packgename是軟體包名,與軟體包的文件名有所區別,它往往是文件名中位於版本號前面的字元串,例如apache-3.1.12-i386.rpm和apache-devel-3.1.12-i386.rpm是軟體包文件名,它們的軟體包名稱分別是apache和apache-devel。更多的rpm參數請自行參看手冊頁:man rpm。
如果你不喜歡在字元界面下安裝或卸載這些軟體包,完全可以在X-Window下使用圖形界面的軟體包管理程序,如glint、xrpm這樣的圖形介面,或者是KDE的kpackge等,這樣對軟體包的安裝、升級、卸載、驗證和查詢就可以通過點擊滑鼠來輕松完成。
2、*.tar.gz/*.tgz、*.bz2形式的二進制軟體包
安裝:tar zxvf *.tar.gz 或 tar yxvf *.bz2
卸載:手動刪除
說明:*.tar.gz/*.bz2形式的二進制軟體包是用tar工具來打包、用gzip/bzip2壓縮的,安裝時直接解包即可。對於解壓後只有單一目錄的軟體,卸載時用命令“rm -rf 軟體目錄名”;如果解壓後文件分散在多處目錄中,則必須一一手動刪除(稍麻煩),想知道解壓時向系統中安裝了哪些文件,可以用命令“tar ztvf *.tar.gz”/“tar ytvf *.bz2”獲取清單。tar的參數z是調用gzip解壓,x是解包,v是校驗,f是顯示結果,y是調用bzip2解壓,t是列出包的文件清單。更多的參數請參看手冊頁:man tar。
如果你更喜歡圖形界面的操作,可以在X-Window下使用KDE的ArK壓縮檔案管理工具。
3、提供安裝程序的軟體包
這類軟體包已經提供了安裝腳本或二進制的安裝向導程序(setup、install、install.sh等),只需運行它就可以完成軟體的安裝;而卸載時也相應地提供了反安裝的腳本或程序。例如SUN公司的StarOffice辦公軟體套件就使用名為setup的安裝程序,而且在軟體安裝後提供反安裝的功能,目前這種類型的軟體包還比較少,因其安裝與卸載的方式與Windows軟體一樣,所以就無需多講了。
二、源代碼分發軟體包的安裝與卸載
Linux軟體的源代碼分發是指提供了該軟體所有程序源代碼的發布形式,需要用戶自己編譯成可執行的二進制代碼並進行安裝,其優點是配置靈活,可以隨意去掉或保留某些功能/模塊,適應多種硬體/操作系統平台及編譯環境,缺點是難度較大,一般不適合初學者使用。
1、*.src.rpm形式的源代碼軟體包
安裝:rpm -rebuild *.src.rpm
cd /usr/src/dist/RPMS
rpm -ivh *.rpm
卸載:rpm -e packgename
說明:rpm --rebuild *.src.rpm命令將源代碼編譯並在/usr/src/dist/RPMS下生成二進制的rpm包,然後再安裝該二進制包即可。packgename如前所述。
2、*.tar.gz/*.tgz、*.bz2形式的源代碼軟體包
安裝:tar zxvf *.tar.gz 或 tar yxvf *.bz2 先解壓
然後進入解壓後的目錄:
./configure 配置
make 編譯
make install 安裝
卸載:make uninstall 或 手動刪除
說明:建議解壓後先閱讀說明文件,可以了解安裝有哪些需求,有必要時還需改動編譯配置。有些軟體包的源代碼在編譯安裝後可以用make install命令來進行卸載,如果不提供此功能,則軟體的卸載必須手動刪除。由於軟體可能將文件分散地安裝在系統的多個目錄中,往往很難把它刪除干凈,那你應該在編譯前進行配置,指定軟體將要安裝到目標路徑:./configure --prefix=目錄名,這樣可以使用“rm -rf 軟體目錄名”命令來進行干凈徹底的卸載。與其它安裝方式相比,需要用戶自己編譯安裝是最難的,它適合於使用Linux已有一定經驗的人,一般不推薦初學者使用。
關於Linux下軟體的安裝與卸載lanche已經講了這么多,但可能還會有人問怎麼知道一個tar.gz/bz2包是二進制文件包呢還是源代碼包?如果你用過壓縮工具就會明白,壓縮包未必就是軟體,它也可能是備份的許多圖片,也可能是打包在一起的普通資料,要分辨它到底是什麼最好的辦法就是查看包里的文件清單,使用命令tar ztvf *.tar.gz / tar ytvf *.bz2或者在X-Window下使用圖形化的ArK壓縮檔案管理工具都可以,源代碼包里的文件往往會含有種種源代碼文件,頭文件*.h、c代碼源文件*.c、C++代碼源文件*.cc/*.cpp等;而二進制包里的文件則會有可執行文件(與軟體同名的往往是主執行文件),標志是其所在路徑含有名為bin的目錄(僅有少數例外)。原來這么簡單呀,還不快點自己試試!
㈤ 如何在linux平台上編譯安裝zlib軟體
想要在linux平台上編譯安裝zlib軟體,你需要搜索zlib官方網站,下載源碼來安裝zlib軟體包進行安裝即可。
㈥ linux怎麼編譯安裝
1、這么說有兩個意思,編譯安裝linux或者要在linux編譯安裝軟體
2、如果從0編譯安裝linux,建議你讀LFS文檔
3、如果要在linux編譯安裝軟體,每種軟體都會提供相關的文檔,先搞清楚佐料再做飯
4、例如編譯安裝nginx,依賴如下
pcre-8.13.tar.gz
zlib-1.2.5.tar.bz2
openssl-1.0.1i.tar.gz
nginx-1.10.1.tar.gz
5、例如編譯安裝mysql
cmake-2.8.8.tar.gz
mysql-5.6.12.tar.gz
㈦ linux編譯安裝命令
Linux編譯安裝相關命令,下面以Linux安裝MySQL工具為例進行說明,代碼如下:
1、測試環境在Linux MySQL下進行,版本系統為CentOS5,以下為相關軟體:
mysql-5.1.30
memcached-1.2.6
libevent-1.4.7-stable
memcached_functions_mysql-0.8
libmemcached-0.26
2、編譯安裝Linux MySQL
[root@localhost~]#tarxzfmysql-5.1.30.tar_001.gz
[root@localhost~]#cdmysql-5.1.30
[root@localhost~]#./configure--prefix=/usr/local/mysql51
[root@localhost~]#make
[root@localhost~]#makeinstall
[root@localhost~]#./scripts/mysql_install_db--user=mysql--skip-name-resolve
[root@localhost~]#/usr/local/mysql51/bin/mysqld_safe
#連接符&這是放入後台,&&是前一個正確執行,才會執行後一個
#Linux編譯安裝流程./configure&&make&&makeinstall(默認目錄安裝)
#./configure--prefix=/usr/local/pcre&&make&&makeinstall(指定安裝目錄)
㈧ linux下的編譯安裝是什麼意思
編譯:將源代碼變為機器可執行的代碼文件。
安裝:將可執行文件安裝到操作系統里,才可以使用。
補充:Linux操作系統是基於UNIX操作系統發展而來的一種克隆系統,它誕生於1991 年的 [Linux桌面] 10 月5 日(這是第一次正式向外公布的時間)。以後藉助於Internet網路,並通過全世界各地計算機愛好者的共同努力,已成為今天世界上使用最多的一種UNIX 類操作系統,並且使用人數還在迅猛增長。
㈨ 如何在linux平台上編譯安裝zlib軟體
1、首先是編譯環境,需要最基本的gcc,autotool工具,不同平台不同的安裝方式,具體可以網路一下
2、在linux下,開源軟體的編譯安裝會有固定的通用步驟:
下載源碼上傳到伺服器上;
解壓源碼包,一般包的後綴是tar.gz、tgz、tar.gz2,這些壓縮包其實都可以使用同一個命令進行解壓 tar xvf tarfile, 進入源碼目錄
源碼目錄下一般會有軟體相關的README、install文檔,簡單的閱讀以下,多數情況下都會有相關的編譯步驟,以及依賴庫
通過步驟:./configure;make && make install
./configure --help可以獲取幫助,用來指定安裝路徑,依賴庫的路徑,編譯選項等
3、對於在linux下編譯zlib請參考步驟2,相信你能行,加油
㈩ Linux系統編譯及軟體安裝
1、## ifconfig <介面名> ip地址 netmask 子網掩碼
或
#network -d 介面名
//設置IP地址
#ifconfig ifconfig <介面名>(up/down)//激活/禁用網路介面
或
#ifup <設備名> //激活網路介面
#ifdown <設備名> //禁用網路介面
2、#mount /dev/sdxy /mnt/usb
3、#sh ./nxp-5.0.0330-demo.run
4、#emerge wine
5、#cd /usr/src/linux-2.4.20-8
#vi Makefile
.....
VERSION=2
PATCHLEVEL=6
SUBLEVEL=26
EXTRAVERSION=-8...
-清除系統上次編譯的垃圾文件
#make mrproper
#make clean
-設置內核功能
#make menuconfig
注:如果想使用現有內核的配置,可以復制"/boot/config-版本號"文件到內核源碼目錄中,並取名為.config
編譯內核和模塊
#make
-安裝內核及模塊
#make mole_install
#make install
6、⑴從網上下載mdadm,用ftp上傳,解壓mdadm並安裝
⑵准備raid分區/新硬碟,分區工具:fdisk/parded (系統類型為raid)
⑶創建raid設備
#mdadm -Cv /dev/mdx -l數字 -n數字 成員磁碟 -x數字
如:#mdadm -Cv /dev/md0 -l1 -n2 /dev/sdb1 /dev/sdc1 -x0
⑷創建/etc/mdadm.conf文件
#touch /etc/mdadm.conf
#vi /etc/mdadm.conf
#mdadm -Ds>>/etc/mdadm.conf
⑸在軟raid上創建文件系統
#mkfs -t ext3 /dev/md0
#mkdir /soft
#mount /dev/md0 /soft
⑹載入軟raid
#vi /etc/fstab
……
/dev/md0 /soft ext3 default 0 0
……
⑺查看raid 狀態
#mdadm -D /dev/md0
⑻啟動raid
#mdadm -As /dev/md0