如何完全移除我的Emacs?

我下载了Emacs源文件,并使用make进行安装。成功安装Emacs后,我手动删除了下载的源文件以节省磁盘空间。现在我想要删除Emacs,尝试使用sudo apt-get purge emacs。但它说Emacs未被安装,因此无法删除。但是我可以通过在终端中键入emacs来运行Emacs。同时,命令which emacs显示结果为/usr/local/bin/emacs
为什么apt-get无法检测到它?在这种情况下,如何完全删除Emacs?我的操作系统是Ubuntu 12.04,我的Emacs版本是24.3.1。
9个回答

你还没有使用软件包管理器安装Emacs。由于你是从源代码压缩包安装的,可以尝试以下方法。
  1. 检查 Emacs 版本。

    $ emacs --version
    
  2. 下载与之前安装的相同版本的 Emacs。

    $ wget https://ftp.gnu.org/gnu/emacs/emacs-$VERSION.tar.xz
    
  3. 解压 tarball。

    $ tar xJvf emacs-$VERSION.tar.xz
    
  4. 运行 ./configure 生成 make 文件。如果你记得安装时使用了哪些选项,也要加上这些命令行标志。(例如:--with-x=no)

    $ cd emacs-$VERSION
    $ ./configure
    
  5. 执行 make uninstall 来卸载。

    $ sudo make uninstall
    

享受吧!


这不足以。
sudo apt-get remove emacs

你必须去做
sudo apt-get remove emacs emacs23 emacs24 emacs25 emacs26 \
                    emacs-bin-common emacs-common emacs-el 

那么

locate emacs

1emacs24也是可以的 - deadfish
我不确定这是否对楼主有帮助或适用。看起来他是从源代码编译和安装的。 - haziz

对我来说,移除emacs-gtk解决了问题。
sudo apt-get remove emacs-gtk

非常感谢。这正是我的问题。 - wbadry

apt-get无法检测到您从源代码安装的应用程序。实际上,每个源文件都会有卸载脚本,但不幸的是您已经删除了源文件。
您仍然可以这样做。在终端中输入以下命令:
locate emacs

它将在系统中列出所有的足迹,然后小心使用rm命令删除那些emacs足迹。

所以我应该保留源文件以便在将来移除该应用程序时使用。当我决定移除它时,我运行 make uninstall,然后删除已下载的源文件。这样对吗?在运行 make uninstall 后,我需要运行 make clean 吗? - Yang Wenhao
1@YangWenhao 可能是make remove或其他命令,但是当你从源码安装软件时,需要保留源代码,这样你才能使用make uninstall或类似的命令来卸载该软件。由于源码构建的软件不是Debian软件包存在,所以无法由打包系统管理。 - Thomas Ward
@ThomasW。谢谢你的帮助。我知道正确的方法。 - Yang Wenhao
4使用locate emacs命令并不会“列出系统中所有与emacs相关的文件”,它只会显示文件名中包含'emacs'的文件。由于emacs这样的程序非常庞大,许多新增的文件可能在名称或路径中并不包含'emacs'。 - Steven K

sudo apt remove --purge emacs-bin-common emacs-el emacs-gtk

这个命令对我起作用了。

我试过这个方法,对我有效:
  1. 打开应用程序中的Emacs图标。
  2. 点击右键 > 显示详细信息。
  3. 点击未安装按钮。
  4. 打开终端 > 输入emacs--version。
  5. 什么都没有显示。
  6. 享受吧。

使用checkinstall
  1. 关闭所有包管理器
  2. 重新下载存档文件
  3. 再次编译emacs
  4. 安装包checkinstall

    sudo apt-get install checkinstall
    
  5. 使用以下命令安装emacs

    sudo checkinstall
    

    以覆盖您之前的安装并获得一个deb软件包。这就是诀窍。

  6. 删除emacs软件包,该命令在通过checkinstall安装后显示。


使用apt
sudo apt remove emacs

跟随着
sudo apt autoremove

这将同时移除emacs-terminal和emacs-GUI。

这对我来说很有效,可以卸载通过ppa:kelleyk/emacs安装的emacs。
起初我尝试了
sudo apt purge --autoremove emacs$VERSION

它删除了一些emacs文件,但emacs本身并没有被删除。当我去终端输入emacs --version时,我仍然可以打开emacs。
然后我再次重新安装了emacs$VERSION
sudo apt install emacs$VERSION

然后再次清除了emacs
sudo apt purge --autoremove emacs$VERSION

现在它已完全移除。