Linux系统安装Emacs编辑器的详细步骤是什么?

在Linux系统中安装Emacs是许多开发者和爱好者的常见需求,Emacs作为一款功能强大的文本编辑器,以其高度可定制性和丰富的扩展生态著称,本文将详细介绍在Linux上安装Emacs的多种方法,包括使用系统包管理器、Snap/Flatpak通用包管理器、从源码编译以及使用版本管理工具,同时涵盖安装后的基本配置和常见问题解决。

linux如何安装emacs

使用系统包管理器安装(推荐新手)

大多数Linux发行版都提供了官方软件仓库,其中包含预编译好的Emacs包,这是最简单、最快速的安装方式,不同发行版的包管理器命令有所不同,以下是常见发行版的操作步骤:

Debian/Ubuntu/Mint等基于Debian的发行版

使用apt包管理器,操作前需更新软件包列表:

sudo apt update
sudo apt install emacs

若需安装特定版本(如Emacs 29),可添加PPA源(以Kelley’s Emacs PPA为例,提供较新版本):

sudo add-apt-repository ppa:kelleyk/emacs
sudo apt update
sudo apt install emacs29  # 安装指定版本

Fedora/CentOS/RHEL等基于Red Hat的发行版

使用dnf(Fedora 34+)或yum(旧版),Fedora默认仓库通常包含较新版本:

# Fedora
sudo dnf install emacs
# CentOS/RHEL(需先安装EPEL源)
sudo yum install epel-release
sudo yum install emacs

Arch Linux

使用pacman包管理器,Arch的仓库版本通常较新:

sudo pacman -S emacs

openSUSE

使用zypper包管理器:

sudo zypper install emacs

不同发行版包管理器命令对比表

发行版系列 包管理器 安装命令 更新命令 卸载命令
Debian/Ubuntu apt sudo apt install emacs sudo apt upgrade emacs sudo apt remove emacs
Fedora dnf sudo dnf install emacs sudo dnf update emacs sudo dnf remove emacs
Arch Linux pacman sudo pacman -S emacs sudo pacman -Syyu sudo pacman -R emacs
openSUSE zypper sudo zypper install emacs sudo zypper up emacs sudo zypper rm emacs

优点:操作简单,依赖自动处理,与系统集成度高;
缺点:仓库版本可能滞后,无法自定义编译选项(如禁用GUI、启用特定模块)。

使用Snap或Flatpak安装(跨发行版通用)

Snap和Flatpak是跨发行版的通用包管理工具,能解决不同系统版本差异问题,尤其适合需要特定版本或隔离环境的场景。

linux如何安装emacs

使用Snap安装

Snap由Canonical开发,多数现代Linux发行版支持(需先安装snapd):

# 安装snapd(Ubuntu/Debian已预装,其他系统需单独安装)
sudo apt install snapd  # Debian/Ubuntu
sudo dnf install snapd  # Fedora
# 安装Emacs(--classic表示需要系统权限,完整功能)
sudo snap install emacs --classic

使用Flatpak安装

Flatpak由 freedesktop.org 推广,需先安装Flatpak和Flathub源:

# 安装Flatpak
sudo apt install flatpak  # Debian/Ubuntu
sudo dnf install flatpak  # Fedora
# 添加Flathub源(Emacs官方发布渠道)
flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
# 安装Emacs
flatpak install flathub org.gnu.emacs

启动时需使用flatpak run org.gnu.emacs,可通过创建桌面快捷键简化操作。
优点:版本独立,自动更新,环境隔离;
缺点:启动较慢,占用空间较大,部分系统功能可能受限(如访问设备文件)。

从源码编译安装(适合高级用户)

若需使用最新开发版、自定义编译选项(如启用原生编译、支持GTK3等),或官方仓库版本过旧,可选择从源码编译,以下是通用步骤:

安装编译依赖

不同发行版依赖包名不同,需提前安装:

# Debian/Ubuntu
sudo apt build-dep emacs  # 自动安装编译所需的依赖包
sudo apt install libgtk-3-dev libx11-dev libxpm-dev libjpeg-dev libpng-dev libgif-dev libtiff-dev libncurses5-dev libxml2-dev libgpm-dev
# Fedora
sudo dnf install emacs-devel gtk3-devel libX11-devel libXpm-devel libjpeg-turbo-devel libpng-devel giflib-devel libtiff-devel ncurses-devel libxml2-devel gpm-devel
# Arch Linux
sudo pacman -S base-devel gtk3 libxpm libjpeg-turbo libpng giflib libtiff ncurses libxml2 gpm

下载源码

从GNU官网或GitHub获取最新源码(以GNU官网为例):

wget https://ftp.gnu.org/gnu/emacs/emacs-29.3.tar.xz  # 替换为最新版本
tar -xvf emacs-29.3.tar.xz
cd emacs-29.3

配置编译选项

运行./configure可自定义功能,常用选项:

./configure --prefix=/usr/local            # 安装路径(默认/usr/local)
            --with-x-toolkit=gtk3          # 使用GTK3界面
            --with-native-compilation       # 启用原生编译(提升Lisp性能)
            --with-json                     # 支持JSON解析
            --without-selinux                # 禁用SELinux支持(可选)

若需查看所有选项,运行./configure --help

编译并安装

make -j$(nproc)  # 使用多核并行编译(加速)
sudo make install  # 安装到系统

优点:功能高度自定义,可获取最新功能;
缺点:依赖复杂,编译耗时,需手动处理版本更新。

linux如何安装emacs

使用版本管理工具(EVM)

若需同时管理多个Emacs版本(如测试不同版本兼容性),可使用Emacs Version Manager(EVM),类似Node.js的nvm:

安装EVM

curl -L -O https://github.com/rejeep/evm/raw/master/scripts/install-evm.sh
bash install-evm.sh
echo 'eval "$(evm init -)"' >> ~/.bashrc  # 初始化(根据shell类型调整)
source ~/.bashrc

安装并切换Emacs版本

evm install 29.1      # 安装指定版本(从GitHub或GNU官网下载)
evm use 29.1          # 切换到29.1版本
evm list              # 查看已安装版本
evm global 29.1       # 设置默认版本

优点:灵活切换版本,便于多环境测试;
缺点:需预先编译或下载各版本,占用额外磁盘空间。

安装后基本配置

安装完成后,首次启动Emacs可运行emacs命令,首次启动会自动生成配置文件~/.emacs.d/init.el,以下为简单配置示例(在init.el中添加):

;; 设置字体(需系统已安装字体)
(set-face-attribute 'default nil :font "Fira Code-12")
;; 禁启动欢迎页
(setq inhibit-startup-message t)
;; 显示行号
(global-display-line-numbers-mode t)
;; 主题(需安装主题包,如doom-themes)
(load-theme 'doom-one t)

保存后重启Emacs即可生效,更多配置可通过扩展包(如use-package)进一步优化。

相关问答FAQs

Q1:安装时提示依赖包缺失怎么办?
A:依赖包缺失通常因系统未安装编译或运行所需库,解决方法:

  • 若使用包管理器安装,运行sudo apt build-dep emacs(Debian/Ubuntu)或sudo dnf builddep emacs(Fedora)自动安装编译依赖;
  • 若从源码编译,根据错误提示安装对应库(如“未找到gtk3-dev”则安装libgtk-3-dev);
  • 确保系统已更新:sudo apt update && sudo apt upgrade(Debian/Ubuntu)或sudo dnf update(Fedora)。

Q2:如何更新已安装的Emacs?
A:更新方式取决于安装方式:

  • 包管理器sudo apt upgrade emacs(Debian/Ubuntu)或sudo dnf update emacs(Fedora);
  • Snapsudo snap refresh emacs
  • Flatpakflatpak update org.gnu.emacs
  • 源码编译:需重新下载最新源码,重复编译安装步骤make clean清理旧文件后重新./configure && make && sudo make install);
  • EVMevv update 29.1(更新指定版本)或evv install latest(安装最新版)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/28830.html

(0)
酷番叔酷番叔
上一篇 2025年9月23日 09:19
下一篇 2025年9月23日 09:38

相关推荐

  • linux文件权限如何查看

    Linux中,可用ls -l命令查看文件权限,显示的

    2025年8月16日
    9400
  • Linux环境下编译运行C语言程序的操作流程是怎样的?

    在Linux环境下编译和运行C程序是开发者必备的基础技能,整个过程涉及源代码编写、编译、链接和执行四个核心环节,本文将详细讲解每个步骤的操作方法、常用工具及注意事项,帮助读者掌握完整的C程序开发流程,开发环境准备在开始编译运行C程序前,需确保系统已安装必要的开发工具,Linux发行版通常默认安装GCC(GNU……

    2025年9月23日
    7800
  • Linux如何解压文件夹?命令详解与方法指南

    在Linux系统中,解压文件夹下的压缩文件是日常操作中的常见需求,由于Linux支持多种压缩格式(如.tar、.gz、.bz2、.xz、.zip、.rar等),不同格式对应的解压命令和参数也有所差异,本文将详细介绍常见压缩格式的解压方法、常用参数及操作技巧,帮助用户高效处理各类压缩文件,常见压缩格式的解压命令……

    2025年9月16日
    6400
  • Linux系统如何启动网页版服务?

    在Linux系统中启动网页版服务通常指搭建一个Web服务器环境,使本地或远程设备能通过浏览器访问网页内容,无论是临时测试、个人项目还是小型网站部署,Linux都提供了多种灵活的方式,本文将详细介绍几种常见方法,涵盖从轻量级临时服务到专业级服务器的搭建步骤,并附上注意事项和常见问题解答,准备工作:环境与权限检查在……

    2025年9月18日
    8200
  • Linux如何快速监控CPU内存?

    查看CPU信息核心配置与型号lscpu输出示例:Architecture: x86_64CPU(s): 8 # 逻辑CPU数量Model name: Intel(R) Xeon(R) CPU E5-2670 v3NUMA node(s): 1关键字段:CPU(s):逻辑处理器总数Model name:CPU型号……

    2025年6月28日
    9100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信