【问题标题】:Festival C/C++ API compiling an example, linking libraries errorFestival C/C++ API 编译示例,链接库错误
【发布时间】:2011-03-07 05:14:52
【问题描述】:

我在使用 Festival C++ API (Windows XP) 时遇到问题。

在我成功制作了festival 和 speech_tools (Cygwin) 后,我有一个名为festival_example.cc 的文件,其中包含:

#include <stdio.h>
#include <festival.h>

int main(int argc, char **argv)
{
    EST_Wave wave;
    int heap_size = 210000;  // default scheme heap size
    int load_init_files = 1; // we want the festival init files loaded

    festival_initialize(load_init_files,heap_size);

    // Say simple file
    //festival_say_file("/etc/motd");

    festival_eval_command("(voice_ked_diphone)");
    // Say some text;
    festival_say_text("hello world");

    // Convert to a waveform
    festival_text_to_wave("hello world",wave);
    wave.save("/tmp/wave.wav","riff");

    // festival_say_file puts the system in async mode so we better
    // wait for the spooler to reach the last waveform before exiting
    // This isn't necessary if only festival_say_text is being used (and
    // your own wave playing stuff)
    festival_wait_for_spooler();

    return 0;
}

然后(Cygwin)我输入:

g++ festival_example.cc -I./festival/src/include  -I./speech_tools/include -L./festival/src/lib -libFestival -L./speech_tools/lib -libestools -libestbase -libeststring

它找不到库。 如果我写 -I/cygdrive/c/0621/source/build/festival/src/include 并且完全一样,错误仍然存​​在。

我的程序在

C:\0621\source\build

在里面我有文件夹 \festival\ 和 \speech_tools\

:)

【问题讨论】:

标签: c++ api text-to-speech festival


【解决方案1】:

将 -lib* 替换为 -l*。
例如 -libFestival 将不起作用。做

g++ festival_example.cc -I./festival/src/include  -I./speech_tools/include -L./festival/src/lib -lFestival

【讨论】:

  • 谢谢它的工作。但是现在我有新的错误!很多未定义的引用... _tgetstr ...等。在 libFestival.a 和 libestools.a 中。想法?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多