最近在做毕设的收尾工作,很多程序都要部署到linux下来运行,遇到了挺多问题,昨天就集中性遇到了 在编译应用时,遇到了

/usr/bin/ld: cannot find -lxxx

这种情况是系统找不到对应的库文件,其中,-lxxx表示链接库文件 libxxx.so。

其命名规则是:lib+库名(即xxx)+.so。

会发生这样的原因有以下三种情形:
1 系统没有安装相对应的lib
2 相对应的lib版本不对
3 lib(.so档)的symbolic link 不正确,没有连结到正确的函式库文件(.so)

一般我们都是遇到了第三种情形,虽然安装了指定的库文件,但是没有进行正确的连接。

对应第一二种情况,我们可以直接用apt-get来解决问题。

apt-get install libxxx-dev

第三种情形的话,我们先用locate和find来找到指定的lib文件,查看链接文件是否正确的指向了我们希望的lib,如果不是,用 ln -sf */libxxx.so.x */libxxx.so 指令修改它。

连接以后,输入ldconfig来让动态链接库供系统共享。

最新文章

  1. The superclass javax.servlet.http.HttpServlet was not found on the Java Build Path。
  2. CSS3实现的渐变按钮,在IE7、IE6下的滤镜使用。
  3. HDOJ 1914 The Stable Marriage Problem
  4. SQL循环+游标
  5. Go语言AST尝试
  6. webservice05#soap消息
  7. 算法二叉搜索树之AVL树
  8. 工作5年的Java程序员,才学会阅读源码,可悲吗?
  9. ----改写superheros的json以及上传到github----
  10. python下载安装BeautifulSoup库
  11. composer修改成国内镜像
  12. Spring的Aspect切面类不能拦截Controller中的方法
  13. [android] 手机卫士号码归属地查询完成
  14. 从.net角度分析 异步和多线程
  15. supervisor简洁用例
  16. ubuntu server install 安装中文(搜狗)输入法
  17. javascript对象定义及创建
  18. day4 RHCE
  19. IPTABLES简介
  20. PowerBuilder中新建PBL

热门文章

  1. [Ynoi2011]D1T1
  2. [NOIP2018模拟赛]d
  3. ldap 禁止匿名登录(5)
  4. (28)SpringBoot启动时的Banner设置【从零开始学Spring Boot】
  5. poj 1523 求割点把一个图分成几个联通部分
  6. MySQL 面试题目
  7. netstat命令介绍-要用熟
  8. POJ 1198/HDU 1401
  9. HttpSession的深入分析与研究
  10. webbench压力測试工具