安装程序./configure
时遇到如下报错,提示没找到zlib文件
configure:3719: error: zlib development files not found
查看config.log文件,可以看到具体的报错信息
conftest.c:13:10: fatal error: zlib.h: No such file or directory`
`/root/cc/biosoft/miniconda2/bin/../lib/gcc/x86_64-conda_cos6-linux-gnu/7.2.0/../../../../x86_64-conda_
cos6-linux-gnu/bin/ld: cannot find -lz
这里提示在这个冗长的路径里没找到zlib.h的文件。
先尝试通过yum install zlib zlib-devel
安装相关库文件;如果提示已安装,则是在指定目录下没找到相关文件。需要找到zlib的安装位置,然后加入环境变量,让程序安装时能够找到它。
#libz.* zlib.h在哪里?
root@localhost bin$ find /usr -name "libz.*"
/usr/lib64/libz.a
/usr/lib64/libz.so
/usr/local/lib/libz.a
/usr/local/lib/libz.so.1
/usr/local/lib/libz.so.1.2.11
/usr/local/lib/libz.so
/usr/local/zlib-1.2.11/lib/libz.a
/usr/local/zlib-1.2.11/lib/libz.so.1
/usr/local/zlib-1.2.11/lib/libz.so.1.2.11
/usr/local/zlib-1.2.11/lib/libz.so
root@localhost bin$ find /usr -name "zlib.h"
/usr/include/zlib.h
/usr/src/kernels/2.6.32-696.13.2.el6.x86_64/include/config/jffs2/zlib.h
/usr/src/kernels/2.6.32-696.13.2.el6.x86_64/include/config/ubifs/fs/zlib.h
/usr/src/kernels/2.6.32-696.13.2.el6.x86_64/include/config/crypto/zlib.h
/usr/src/kernels/2.6.32-696.13.2.el6.x86_64/include/linux/zlib.h
/usr/src/kernels/2.6.32-573.el6.x86_64/include/config/jffs2/zlib.h
/usr/src/kernels/2.6.32-573.el6.x86_64/include/config/ubifs/fs/zlib.h
/usr/src/kernels/2.6.32-573.el6.x86_64/include/config/crypto/zlib.h
/usr/src/kernels/2.6.32-573.el6.x86_64/include/linux/zlib.h
/usr/local/zlib-1.2.11/include/zlib.h
/usr/local/include/ezlib/zlib.h
/usr/local/include/zlib.h
可以看到libz.h,zlib.a
分别在/usr/local/include,/usr/local/lib
中(当然其他路径也可以,这里我是挑了个最短的路径),而~/.bashrc 和~/.bash_profile
文件中没有指定该路径,所以安装程序时提示找不到zlib,所以只要在~/.bash_profile
中将相应路径加入PATH即可.
Note: 配置文件的修改尽量从简,将相关库文件的路径放在前面,软件调用的相关路径放在后面。
网友评论