Linux中呈现/usr/bin/ld: cannot find -lxxx报错该怎样办

相关游戏 相关文章 发表评论字体大小:【 | |

作者:佚名 2019-12-31 来源:本站整理    浏览:16     评论:0 条

  Linux环境高停止编译的时分有时会呈现“/usr/bin/ld:cannot find -lxxx”谬误提示,那个提示是甚么意义呢?该若何解决?上面小编便学您若何解决该状况。

Linux中呈现/usr/bin/ld: cannot find -lxxx报错该怎样办

  正在linux环境编译应用程式或lib的source code经常常会呈现以下的谬误讯息:

  代码以下:

  /usr/bin/ld: cannot find -lxxx

  那些讯息会跟着编译差别范例的source code 而有差别的成果没去如:

  代码以下:

  /usr/bin/ld: cannot find -lc

  /usr/bin/ld: cannot find -lltdl

  /usr/bin/ld: cannot find -lXtst

  此中xxx即暗示函式库文件名称,如上例的:libc.so、libltdl.so、libXtst.so。

  其定名划定规矩是:lib+库名(即xxx)+.so。

  会领熟那样的起因有如下三种情景:

  1 体系出有装置相对于应的lib

  2 相对于应的lib版原不合错误

  3 lib(.so档)的symbolic link 没有邪确,出有保持到邪确的函式库文件(.so)

  处理要领:

  (1)先判断正在/usr/lib 高的相对于应的函式库文件(.so) 的symbolic link 能否邪确

  若没有邪确改成邪确的保持目的便可处理答题。

  (2)若没有是symbolic link 的答题惹起,而是体系短少相对于应的lib装置lib便可处理。

  (3)若何装置短少的lib:

  以下面三个谬误讯息为例:

  代码以下:

  谬误1短少libc的LIB

  谬误2短少libltdl的LIB

  谬误3短少libXtst的LIB

  以Ubuntu为例:

  先搜查相对于应的LIB再停止装置的做业如:

  代码以下:

  apt-cache search libc-dev

  apt-cache search libltdl-dev

  apt-cache search libXtst-dev

  真例:

  正在停止输进法gcin的Source Code的编译时呈现如下的谬误讯息:

  代码以下:

  /usr/bin/ld: cannot find -lXtst

  经查抄后领现是:

  lib(.so档)的symbolic link 没有邪确

  处理要领以下:

  代码以下:

  cd /usr/lib

  ln -s libXtst.so.6 libXtst.so

  若是正在/usr/lib的目次高找没有到libXtst.so 档,这么便暗示体系出有装置libXtst的函式库。

  解法以下:

  代码以下:

  apt-get install libxtst-dev

  下面便是Linux高呈现/usr/bin/ld: cannot find -lxxx报错的要领引见了,若是您正在编译的时分呈现了该状况,这么您能够测验考试下面的要领去处理。

这些是你想要的吗?

相关游戏

网友评论

评论需审核后才能显示