一、准备编译环境
libtool 是老牌构建工具,编译它只需要基础的编译器套件:
sudo yum install -y gcc make automake autoconf
二、解压源码包
安装包下载:https://pan.quark.cn/s/48244dce8884,把下载好的 libtool-1.5.22.tar.gz放到 /usr/local/src(习惯用法,方便管理):
cd /usr/local/src
tar -zxvf libtool-1.5.22.tar.gz
cd libtool-1.5.22
三、配置编译参数
老版本 libtool 一般不需要复杂参数,直接配置即可:
./configure --prefix=/usr/local/libtool-1.5.22
--prefix:指定安装目录,方便以后删除或切换版本
如果报 configure: error: no acceptable C compiler found,说明 gcc 没装好,回去第一步补装。
四、编译并安装
配置通过后,直接编译安装:
make
make install
没有报错就说明装好了。
五、配置环境变量
为了能在命令行直接使用 libtool,把它的 bin 目录加到 PATH:
echo 'export PATH=/usr/local/libtool-1.5.22/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
如果是给所有用户用,也可以写进 /etc/profile。
六、验证安装
查看版本号确认是否成功:
libtool --version
看到 libtool (GNU libtool) 1.5.22类似的输出就没问题了。
七、常见问题
make 时报语法错误
老版本 libtool 和新 gcc 不太兼容,可以尝试:
make CFLAGS="-O2 -w"忽略部分警告继续编译。
和其他版本冲突
系统可能已经自带 libtool,用
which libtool看用的是哪个路径,必要时调整 PATH 顺序。只给某个软件用
编译依赖它的软件时,在 configure 阶段指定:
./configure LIBTOOL=/usr/local/libtool-1.5.22/bin/libtool
这样就能在 CentOS 7 上装好老版本 libtool 1.5.22,适合维护很老的 C/C++ 项目。