Mingw和Eclipse无法找到库-2

时间:2014-09-11 14:16:23

标签: c eclipse mingw static-libraries opus

我面临的问题与古斯塔沃在以下Link中提出的问题完全相同。此外,我已尝试在该链接和其他标签中发布的所有解决方案(例如将库名从opus.a更改为libopus.a,将'\'更改为'/'等等)但这些都没有解决我的问题。通过打开库文件的属性,可以显示以下内容:

路径: /demo/opusfile/libopusfile.a

输入:文件(静态库)

位置:U:\ data \ Jag \ eclipse \ wrksp \ demo \ opusfile \ libopusfile.a

Mingw显示的错误消息如下:

15:56:57 **** Incremental Build of configuration Debug for project demo ****
Info: Internal Builder is used for build
gcc -o demo.exe "src\\demo.o" -lU:/data/Jag/eclipse/wrksp/demo/opusfile/libopusfile.a 
c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot find -lU:/data/Jag/eclipse/wrksp/demo/opusfile/libopusfile.a
collect2.exe: error: ld returned 1 exit status

collect2.exe: error: ld returned 1 exit status

有人可以告诉我我错过了什么吗?我无法解决此问题

1 个答案:

答案 0 :(得分:1)

我认为我找到了解决方案,感谢此Link中发布的答案。所以基本上总结一下解决方案,当我指定库(-l参数)时,我不得不删除'lib'前缀,'。a'后缀和库路径。必须在-L参数中指定库路径。这解决了上述问题,但却引发了Mingw的另一个障碍:

libopusfile.dll.a: could not read symbols: Archive has no index; run ranlib to add one.

我在命令提示符

中执行了'ranlib'命令
cmd_path> ranlib libopusfile.dll.a 

,正如编译器所建议的,这解决了我所有的问题!