跳过正文

无需sudo权限从源码编译安装zsh

·475 字·1 分钟
锦李本鲤
作者
锦李本鲤
光锥之内,皆为命运。

缘起
#

学校的计算集群上默认的shell是bash,而没有我常用的zsh,没了自动补全和语法高亮用着非常不习惯。而且普通的账户没有管理员权限,无法用sudo直接通过包管理工具来安装zsh,因此必须从源码来编译和安装zsh。

安装依赖项ncurse
#

ncurse库(new curse)是一个支持基于文本的用户界面的接口库,zsh在运行时依赖于这个库。在安装zsh前需要先安装ncurse库。

  1. 下载ncurse 6.1版本(目前的最新版本)

    1
    
    wget https://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.1.tar.gz --no-check-certificate
  2. 解压并进入解压后的目录

    1
    2
    
    tar xvfz ncurses-6.1.tar.gz
    cd ncurses-6.1
  3. 编译安装配置

    1
    
    ./configure --prefix="$HOME/software" CXXFLAGS="-fPIC" CFLAGS="-fPIC"

    这里指定安装目录是用户根目录下的software文件夹。

  4. 编译并安装

    1
    
    make && make install

安装zsh
#

  1. 下载zsh最新版

    1
    
    wget -O zsh.tar.xz https://sourceforge.net/projects/zsh/files/latest/download --no-check-certificate
  2. 解压并进入解压后的目录

    1
    2
    
    tar xvfz -C zsh zsh.tar.xz
    cd zsh
  3. 编译安装配置

    1
    
    ./configure --prefix="$HOME/software" CPPFLAGS="-I$HOME/software/include" LDFLAGS="-L$HOME/software/lib"

    同样指定安装目录是用户根目录下的software文件夹。

  4. 编译并安装

    1
    
    make && make install
  5. 最后把zsh的二进制文件夹加入系统环境中

    1
    
    export PATH=$HOME/software/bin:$PATH

    也可以把这行代码加入bash的配置文件.bashrc中。

安装与配置oh-my-zsh
#

请参考“命令行用户的oh-my-zsh配置”