iT邦幫忙

0

Linux tarball安裝問題

一般都會用apt-get 或yum指令去找有沒有軟體更新
但是官方發布的更新常常都很久以前的
去抓軟體的最新tar.gz安裝
那假如原本yum安裝了舊版
在make install了新版 那會造成什麼狀況 新版與舊版並存? 這樣應該會衝突吧
如果tarball安裝了新版再yum移除舊版會有問題嗎?

還有make install就算成功了
可能就出現個'build' finished successfully
那又怎麽去查詢tarball安裝了什麼和版本
怎麽去移除make install所安裝過的軟體
問題有點多 請高手解惑

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

1
yesongow
iT邦大師 1 級 ‧ 2017-05-25 13:58:18

建議
請至鳥哥的 LINUX 私房菜研讀

http://linux.vbird.org/

0
ayu
iT邦好手 2 級 ‧ 2017-05-27 11:47:29

如果有把source code裡的INSTALL/README看清楚,
應該就不會有這麼多疑問.

RedHat/Debian 套件的預設路徑是 /usr ,
而源碼的INSTALL就有提到, 其預設路徑是 /usr/local ,
當然, 其彈性很大, 愛怎麼指定隨你的意思, 不要搞衝突就好.

如您真的需要套件版本與源碼編譯版本共存,
我是建議在編譯源碼時, 不要用預設路徑,
而是指定安裝到獨立目錄, 即使作者沒把
make uninstall做好, 日後也只需要刪除
該獨立目錄, 即可徹底移除.
以 clamav-0.99.2 為例, 源碼釋出後一個多月才有套件可裝, 不想等的話就抓官網源碼來編譯安裝.
./configure --help , 可看到有一大堆參數可指定
./configure --prefix=/opt/clamav0992
可將clamav-0.99.2指定將要安裝在 /opt/clamav0992
然後 make ; make install
若忘記相關路徑指定到哪去了, 可以查看 Makefile
要移除時只需 rm -rf /opt/clamav0992
或 make uninstall 亦可

[ 參考 ]
Tarball 安裝的基本步驟
http://linux.vbird.org/linux_basic/0520source_code_and_tarball.php#tarball_common

我要發表回答

立即登入回答