当前位置: 首页 > 知识库问答 >
问题:

ld找不到-l

寿和通
2023-03-14

我在ubuntu 12.04上安装PyiPot时遇到问题。在链接过程中,我收到错误:

/usr/bin/ld: cannot find -lcoinhsl

即使我知道此库已安装,并且。等等。la文件位于/home/mostafa/MyBuilds/coinipot/build/lib/

有人能解决这个问题吗?

下面是运行安装程序的完整返回。py构建:

root@ubuntu:~/MyBuilds/pyipopt# sudo python setup.py build
running build
running build_ext
building 'pyipopt' extension
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/lib/python2.7/dist-packages/numpy/core/include -I/home/mostafa/MyBuilds/CoinIpopt/build/include/coin/ -I/usr/include/python2.7 -c src/callback.c -o build/temp.linux-x86_64-2.7/src/callback.o
gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/lib/python2.7/dist-packages/numpy/core/include -I/home/mostafa/MyBuilds/CoinIpopt/build/include/coin/ -I/usr/include/python2.7 -c src/pyipopt.c -o build/temp.linux-x86_64-2.7/src/pyipopt.o
src/pyipopt.c: In function ‘set_intermediate_callback’:
src/pyipopt.c:452:15: warning: variable ‘myowndata’ set but not used [-Wunused-but-set-variable]
gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relrobuild/temp.linux-x86_64-2.7/src/callback.o build/temp.linux-x86_64-2.7/src/pyipopt.o -L/home/mostafa/MyBuilds/CoinIpopt/build/lib/ -lipopt -lblas -lcoinhsl -lcoinmetis -llapack -ldl -lm -o build/lib.linux-x86_64-2.7/pyipopt.so -Wl,--rpath -Wl,/home/mostafa/MyBuilds/CoinIpopt/build/lib/
/usr/bin/ld: cannot find -lcoinhsl
collect2: ld returned 1 exit status
error: command 'gcc' failed with exit status 1

共有3个答案

孟品
2023-03-14

我在另一个库中遇到了类似的问题,它没有找到它的原因是我没有为该库运行make安装(在运行./configure and make之后)。make安装可能需要root权限(在本例中使用:sudo make install)。运行make安装后,您应该将so文件放在正确的文件夹中,即此处/usr/local/lib,而不是您提到的文件夹中。

袁高峰
2023-03-14

您可以在其中一个标准库目录中安装coinhsl库,并在执行ppyiPot安装之前运行'ldconfig'

卫成和
2023-03-14

-ldir
将目录dir添加到要搜索的目录列表中-l.

 类似资料:
  • 问题内容: 我正在尝试编译我的程序,它返回此错误: 在我的makefile文件中,我使用命令并链接到我的库,这是到我的库的另一个目录的符号链接。 是否可以添加选项以使其正常工作? 问题答案: 如果您的图书馆名称是say 并且位于路径上,请说: 然后将其链接到您的程序:

  • 问题内容: 我正在尝试使用Python 2.7安装MySQLdb。我收到的错误如下所示: 显然,它找不到Python 2.7。展望我看到: 该符号是什么意思?谁能建议对此错误采取补救措施? 问题答案: 它找不到Python库,而不是可执行文件。运行以查看Python库的位置,然后将其添加到库路径(例如,如果位于中,则要调用)。 该符号意味着该文件是一个符号链接; 表示它是可执行文件(这些文件由产生

  • 我有一个问题。我的项目无法编译。此错误总是出现: 我使用这个框架: 我从终端得到这个。 这是我的pod文件: use_frameworks! 我正在使用XCode 9.2。请帮帮我。

  • 因此,我试图使用make-f Makefile编译一个程序,但我得到了以下错误/usr/bin/ld:not find-lgd 生成文件: 替换(libgd.a libgd.la libgd.so libgd.so.2 libgd.so.2.0.0)后,我收到以下错误:

  • 我试图编译我的程序,它返回这个错误: 在我的makefile中,我使用命令并链接到我的库,这是一个符号链接到我位于其他目录上的库。 是否有一个选项添加,使其工作,请?