我在程序中使用了Festival TTS c++ API,我已经从http://www.cstr.ed.ac.uk/downloads/festival/2.0.95/下载了所有文件
并在我的UBUNTU 10.04上成功安装了Festival和Speech_tools

现在,当编译我的C++程序gcc时出现错误:

g++ -L/usr/lib -L/home/peeyush/Desktop/festival/src/lib -L/home/peeyush/Desktop/speech_tools/lib -o"peeyush" ./src/peeyush.o -llibeststring.a -llibestbase.a -llibestools.a -llibFestival.a
/usr/bin/ld: cannot find -llibeststring.a
collect2: ld returned 1 exit status
make: *** [peeyush] Error 1

因此,请帮助我解决此错误。

-谢谢

Peeyush Chandel(印度)

最佳答案

使用-l选项时,您无需指定链接器假定的名称的开头lib或结尾的.a.so部分。您可能希望使用-leststring之类的东西来拾取它(假设-L路径设置正确)。

或者,您可以在链接的对象列表中指定确切的文件名(因此,没有-l,只有libeststring.a)(确保顺序相对于.o文件正确),但是我认为在这种情况下,您必须指定链接器不知道搜索您的-L路径。最简单的方法是使用-l

关于c++ -/usr/bin/ld:找不到-llibeststring.a,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2947239/

10-10 21:38