我正在尝试安装一个应用程序。在编译过程中失败,并出现以下错误:

/usr/bin/ld: cannot find -lemu

我已经安装了libemu库,它现在位于/opt/libemu/中。但是,当我尝试编译我的应用程序时,找不到库。有什么办法可以纠正吗?
编辑:看起来该品牌还导致:
make文件似乎正在使用以下命令编译:
gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions
build/temp.linux-x86_64-2.6/libemu_module.o
-L/opt/libemu/lib -lemu -o build/lib.linux-x86_64-2.6/libemu.so

我已尝试将我的ld_library_路径设置为/opt/libemu,但仍然无法工作-失败,出现上述错误。

最佳答案

你需要告诉链接器它在哪里:

gcc  stuff -L/opt/libemu -lemu

或:
gcc  stuff /opt/libemu/libemu.a

其中stuff是正常的编译/链接选项文件等。
也可以在LIBRARY PATH环境变量中指定库路径:
LIBRARY_PATH=/opt/libemu
export LIBRARY_PATH

在运行生成之前。另一个选择是通过运行以下命令查看gcc查找库的位置:
gcc --print-search-dirs

并将库放在列出的目录中。
编辑:从你的最新信息来看,还不清楚你想建立什么。你想把静态库变成共享库吗?最重要的是-您复制到/opt/libemu目录中的库文件的确切文件名是什么?

关于linux -/usr/bin/ld:找不到-lemu,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2975530/

10-11 07:31