ld 找不到 libjasper 库
Posted
技术标签:
【中文标题】ld 找不到 libjasper 库【英文标题】:ld cannot find libjasper library 【发布时间】:2019-01-25 11:25:17 【问题描述】:我正在尝试在 Ubuntu 18.04 上将应用程序与 gc 链接。 。我使用这些命令手动安装了它:
sudo apt update
sudo apt install libjasper1 libjasper-dev
但出现此错误:
/usr/bin/ld: cannot find -llibjasper
我尝试了这个命令来添加库,但没有成功:
gcc -o cnn connected_layer.c connected_layer.h convolutional_layer.c convolutional_layer.h image.c image.h maxpool_layer.c maxpool_layer.h network.c network.h tests.c -Wall `pkg-config --cflags --libs opencv` -flto -ffast-math -L /usr/lib/x86_64-linux-gnu -l libjasper
【问题讨论】:
库的名称是jasper
。名称中未使用lib
前缀和任何可能的后缀。
【参考方案1】:
替换
-l libjasper
通过
-l jasper
lib
只是库文件的强制后缀,在为链接器指定名称时会被忽略。
【讨论】:
我在终端中找到了两个使用“locate jasper”的库: /usr/include/jasper /usr/lib/x86_64-linux-gnu/libjasper.a 我应该使用哪一个? 如果一切安装良好,只需使用-l japser
。
@I.Bou “我应该使用哪个”。第一个是库的头文件所在的目录,供编译器使用。第二个是library,供链接器使用。你编译,然后链接。两者都使用。以上是关于ld 找不到 libjasper 库的主要内容,如果未能解决你的问题,请参考以下文章
/usr/bin/ld: 找不到 -ldlib /usr/bin/ld: 找不到 -lcblas /usr/bin/ld: 找不到 -llapack