checkinstall 輕鬆移除安裝自源碼的套件 - Linux

By Thomas
at 2017-06-18T02:10
at 2017-06-18T02:10
Table of Contents
今天如果你從源碼透過
>> make install
安裝了一個套件, 當你想移除他的時候該怎麼辦呢?
如果你運氣很好, 源碼的 Makefile 有 uninstall 這個 target 的話,
你只需要執行
>> make uninstall
就能夠達成你的目的. 然而並不是所有的套件都有這個功能.
當 make uninstall 無法使用的時候該怎麼辦呢?
土法煉鋼的方式就是一步一步拆回去.
>> make -n install
這個指令會顯示你在 make install 過程中每一步發生的事情,
你需要做的事情很簡單 -- 逆著步驟「肅清」就可以了.
但有的時候, 這個過程很繁冗, 甚至會出現一些莫名的問題,
這時 checkinstall 就派上用場了!
checkinstall 執行的事情可以簡單理解成:
把 make install 過程中的所有檔案都包裝成一個 .deb 檔 (以 Debian 系列為例)
舉個小小的例子
假設今天你透過原始碼及 make install 安裝了一個套件,
你不知道要如何移除它.
過程如下: (以 Debian 系列為例)
1. 透過 apt-get 安裝 checkinstall
>> sudo apt-get install checkinstall
2. 進入原始碼的路徑下, 用 checkinstall 把整個套件包裝成 .deb 檔
>> cd $PACKAGE_SOURCE_DIR
>> sudo checkinstall
這個步驟其實是「重新安裝一次」套件.
sudo checkinstall 這個指令等同於 make install 後
再把套件的所有檔案包裝成一個 .deb 檔
3. 如果上一步成功的話, 可以透過 dpkg -L $PACKAGE_NAME 檢查.
如果有的話 -- 恭喜你可以透過
>> sudo dpkg -r $PACKAGE_NAME
來移除這個套件了!
為了方便管理這些用 make install 安裝自源碼的套件,
可以考慮未來要 make install 時全部使用 checkinstall 來取代喔!
更多關於 checkinstall 的資訊可以參考
https://help.ubuntu.com/community/CheckInstall
--
Tags:
Linux
All Comments

By Una
at 2017-06-20T18:54
at 2017-06-20T18:54

By Annie
at 2017-06-22T11:00
at 2017-06-22T11:00

By Victoria
at 2017-06-26T01:00
at 2017-06-26T01:00

By Jacky
at 2017-06-27T11:40
at 2017-06-27T11:40

By Queena
at 2017-07-01T06:28
at 2017-07-01T06:28

By Ophelia
at 2017-07-01T22:08
at 2017-07-01T22:08

By Barb Cronin
at 2017-07-02T12:16
at 2017-07-02T12:16

By Carolina Franco
at 2017-07-05T22:18
at 2017-07-05T22:18

By Cara
at 2017-07-08T13:17
at 2017-07-08T13:17

By Emily
at 2017-07-13T01:29
at 2017-07-13T01:29

By Isla
at 2017-07-14T22:51
at 2017-07-14T22:51

By Audriana
at 2017-07-17T21:17
at 2017-07-17T21:17

By Liam
at 2017-07-22T03:54
at 2017-07-22T03:54

By Frederic
at 2017-07-25T20:54
at 2017-07-25T20:54

By Kelly
at 2017-07-27T14:08
at 2017-07-27T14:08

By Mia
at 2017-08-01T10:19
at 2017-08-01T10:19

By Dorothy
at 2017-08-05T18:26
at 2017-08-05T18:26
Related Posts
CentOS yum 和 rpm 出現 `XZ_5.1.2alpha' not found

By Gilbert
at 2017-06-16T14:58
at 2017-06-16T14:58
ubuntu連無線wifi

By Anonymous
at 2017-06-16T09:42
at 2017-06-16T09:42
windows使用shell script的書

By Bennie
at 2017-06-14T17:29
at 2017-06-14T17:29
安裝失敗

By Todd Johnson
at 2017-06-14T01:32
at 2017-06-14T01:32
偶爾用gcin輸入時在,chrome整個不見

By Yuri
at 2017-06-11T20:19
at 2017-06-11T20:19