安装fastdfs-nginx-module /usr/bin/ld: cannot find -lfdfsclient collect2: error: ld returned 1 exit status

介绍


nginx编译安装fastdfs-nginx-module时报错

objs/ngx_modules.o \
-ldl -lpthread -lcrypt -lfastcommon -lfdfsclient -lpcre -lcrypto -lcrypto -lz \
-Wl,-E
/usr/bin/ld: cannot find -lfdfsclient
collect2: error: ld returned 1 exit status
make[1]: *** [objs/nginx] Error 1
make[1]: Leaving directory `/data/soft/nginx-1.9.11'`
make: *** [build] Error 2

原因


由于安装fastdfs时改变了安装目录,导致fastdfs-nginx-module不能找到fdfsclient的库文件

解决方法 把xx.so文件复制到/usr/lib


本次报错只需要把libfdfsclient.so的软链接做好就行了

ln -sv /data/fastdfs/usr/lib/libfdfsclient.so /usr/lib/

Linux系统中提示/usr/bin/ld: cannot find -lxxx错误的通用解决


  1. 先判断在/usr/lib下的相对应的函式库文件(.so)的symbolic link是否正确,若不正确改成正确的连结目标即可解决问题。
  2. 若不是symbolic link的问题引起,而是系统缺少相对应的lib安装lib即可解决。
  3. 如何安装缺少的lib:

以上面三个错误讯息为例:

  • 复制代码代码如下:
  • 错误1缺少libc的LIB
  • 错误2缺少libltdl的LIB
  • 错误3缺少libXtst的LIB

版权声明:本文为作者原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原创文章,作者:老C,如若转载,请注明出处:https://www.code404.icu/1457.html

发表评论

登录后才能评论