编译异常:/usr/bin/ld: cannot find XXX

最近安装PHP的LAMP环境,编译PHP的时候,报异常:

  1. configure: error: mysql configure failed. Please check config.log

查看config.log发现报错:

  1. usr/bin/ld: cannot find -lltdl

通过网上放狗和不断试验,问题终于解决。

找到/usr/lib64/libltdl.so.3.1.4,在该目录下执行以下命令:

  1. ln -sv libltdl.so.3.1.4 libltdl.so

以下是来之网上的资料:

通常在软件编译时出现的usr/bin/ld: cannot find -lxxx的错误,主要的原因是库文件并没有导入的ld检索目录中。

解决方式:

1。确认库文件是否存在,比如-l123, 在/usr/lib, /usr/local/lib,或者其他自定义的lib下有无lib123.so, 如果只是存在lib123.so.1,

那么可以通过ln -sv lib123.so.1   lib123.so,建立一个连接重建lib123.so.

2。检查/etc/ld.so.conf中的库文件路径是否正确,如果库文件不是使用系统路径,/usr/lib, /usr/local/lib, 那么必须在文件中加入。

3。ldconfig 重建ld.so.cache文件,ld的库文件检索目录存放文件。尤其刚刚编译安装的软件,必须运行ldconfig,才能将新安装的库文件导入ld.so.cache.

4。测试,gcc -l123 --verbose.


你可能感兴趣的:(编译异常:/usr/bin/ld: cannot find XXX)