-1

当我尝试使用 olcPixelGameEngine 作为头文件编译一些 c++ 代码时出现错误,错误是 -

/usr/bin/ld: cannot find -lGL
/usr/bin/ld: cannot find -lpng
4

1 回答 1

-1

根据正在编译的代码,错误消息可能如下所示:

/usr/bin/ld: 找不到-lc

/usr/bin/ld: 找不到-lltdl

/usr/bin/ld: 找不到-lXlst

xxx 代表库的名称,例如libc.so、libltdl.solibXtst.so。命名规则为:lib+库名(即xxx)+.so。

发生此类错误有 3 种可能的原因:

  1. 系统中没有安装lib;
  2. 已安装库的版本不正确;
  3. lib(.so文件)的符号链接不正确。该链接未链接到正确的 .so 文件。

解决方案:

  1. 检查符号链接是否正确链接到 .so 文件中/usr/lib并更正任何不正确的链接。

例如,

如果错误消息“ /usr/bin/ld: cannot find -lXlst”是由不正确的符号链接引起的,请发出以下命令进行更正。

cd /usr/lib

ln -s libXtst.so.6 libXtst.so

  1. 如果问题不是由不正确的符号链接引起的,则很可能是由于缺少 lib。在这种情况下,需要安装缺少的 lib。

例如,

如果错误信息“/usr/bin/ld: cannot find -lXlst”是由于“/usr/lib”下缺少“libXtst.so”导致的,请发出以下命令进行安装。

apt-get 安装 libxtst-dev

关于如何安装缺少的库的附加说明。

  1. 识别丢失的磅

          Error Message                             Missing lib
    

/usr/bin/ld: 找不到 -lc ---------------------------------------- ------------->libc

/usr/bin/ld: 找不到 -lltdl ---------------------------------------- ------------->libltdl

/usr/bin/ld: 找不到 -lXlst ---------------------------------------- -------------> libXtst

  1. 搜索丢失的库

    apt-cache search libc-dev

    apt-cache search libltdl-dev

    apt-cache search libXtst-dev

  2. 安装缺少的库。

请参考以下链接。这可能会有所帮助。

http://wei48221.blogspot.com/2017/08/linux-how-to-solve-problem-of-usrbinld.html

于 2021-12-07T08:46:10.080 回答