zoukankan      html  css  js  c++  java
  • 手动编译安装tmux

    tmux的好处就不多说了,总之是多屏管理的神器。通常我们用系统通用的安装方式可以安装到tmux,但有时候,安装到的可能不是我们所需要的版本,又或者软件源里面没有带tmux。这个时候就需要手动编译安装了。

    下面记录一次在CentOS 6.9上手动编译安装tmux的一次实录。

    首先先到github上找到tmux:https://github.com/tmux/tmux,git clone到本地,然后查看README:

    tmux要依赖于libevent,所以先到http://libevent.org上面下载最新版的libevent包,目前最新包是2.1.8-stable。

    下载安装:

    $ wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz
    $ ./autogen.sh
    ./autogen.sh: line 18: aclocal: command not found
    $ sudo yum -y install automake
    $ ./autogen.sh
    autoreconf: Entering directory `.'
    autoreconf: configure.ac: not using Gettext
    autoreconf: running: aclocal --force -I m4
    autoreconf: configure.ac: tracing
    autoreconf: running: libtoolize --copy --force
    Can't exec "libtoolize": No such file or directory at /usr/share/autoconf/Autom4te/FileUtils.pm line 345, <GEN3> line 5.
    autoreconf: failed to run libtoolize: No such file or directory
    autoreconf: libtoolize is needed because this package uses Libtool

    看到一个找不到libtool的报错,安装libtool:

    $ sudo yum install libtool

    安装成功之后,重新执行./autogen.sh,成功。

    接着执行:

    $ ./configure
    $ make
    $ sudo make install

    发现缺失了ncurses,安装下:

    $ sudo yum install ncurses-devel

    ## 或者直接下载安装:

    $ wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-6.1.tar.gz
    $ tar -xvf ncurses-6.1.tar.gz
    $ cd ncurses-6.1
    $ ./configure
    $ make
    $ make install

    重新执行上面的过程,OK,libevent,安装成功。

    接下来安装tmux,到tmux的目录下,同样执行:

    $ ./autogen.sh
    $ ./configure
    $ make
    $ sudo make install

    没看到任何报错,应该是OK了,接下来执行tmux测试下:

    $ tmux
    tmux: error while loading shared libraries: libevent-2.1.so.6: cannot open shared object file: No such file or directory

    说找不到libevent,很莫名,去查验下:

    $ cd /usr/local/lib
    $ ls -lh | grep libevent-2.1.so.6
    lrwxrwxrwx  1 root root    21 May 22 18:27 libevent-2.1.so.6 -> libevent-2.1.so.6.0.2
    -rwxr-xr-x  1 root root  1.4M May 22 18:27 libevent-2.1.so.6.0.2
    lrwxrwxrwx  1 root root    21 May 22 18:27 libevent.so -> libevent-2.1.so.6.0.2

    在此目录下执行tmux,发现可以成功,但是切换到别的目录,则会报上述错误,具体原因应该是tmux按照默认共享库路径找不到该共享库文件,那么我们建立一个软链接即可:

    64位系统
    ln -s /usr/local/lib/libevent-2.1.so.6 /usr/lib64/libevent-2.1.so.6
    
    32位系统
    ln -s /usr/local/lib/libevent-2.1.so.6 /usr/lib/libevent-2.1.so.6

    创建完软连接之后,发现tmux可用,到此安装结束。

  • 相关阅读:
    获取某年某月有几天
    ps怎么修改gif动图播放速度
    Swing滚动条重写
    Swing自定义JScrollPane的滚动条设置,重写BasicScrollBarUI方法
    你真的了解UIButton、UILabel 吗?
    问题:-[UIViewController _loadViewFromNibNamed:bundle:] loaded the "BlueView" nib but the view outlet was not set.
    李洪强漫谈iOS开发[C语言-043]-练习
    iOS开发基础知识--碎片46
    iOS开发基础知识--碎片45
    iOS开发基础知识--碎片44
  • 原文地址:https://www.cnblogs.com/minglee/p/9082024.html
Copyright © 2011-2022 走看看