2016-07-25 13 views
-1

イムpocketsphinxの使用を開始しようとしているが、私はこのエラーを取得:未解決のシンボル

gcc -I /home/noahchalifour/libraries/pocketsphinx/include -I /home/noahchalifour/libraries/sphinxbase/include pocketsphinx.c -o pocketsphinx 
/tmp/ccagvqgz.o: In function `main': 
pocketsphinx.c:(.text+0x20): undefined reference to `ps_args' 
pocketsphinx.c:(.text+0x6b): undefined reference to `cmd_ln_init' 
collect2: error: ld returned 1 exit status 

私はこのコードを実行するたび:

#include <pocketsphinx.h> 

#define MODELDIR "/home/libraries/pocketsphinx/model" 

int main(int argc, char *argv[]) 
{ 
    ps_decoder_t *ps = NULL; 
    cmd_ln_t *config = NULL; 

    config = cmd_ln_init(NULL, ps_args(), TRUE, 
      "-hmm", MODELDIR "/en-us/en-us", 
      "-lm", MODELDIR "/en-us/en-us.lm.bin", 
      "-dict", MODELDIR "/en-us/cmudict-en-us.dict", 
      NULL); 

    printf("Success!\n"); 

    return 0; 
} 
+1

[定義されていない参照/未解決の外部シンボルエラーとは何ですか?どうすれば修正できますか?](http://stackoverflow.com/questions/12573816/what-is-an-undefined-reference-unresolved- – Olaf

+0

私はこのページを読んだことがありますが、それは同じ取引と思われますが、私の状況でそれを修正する方法を理解していません。助けてくれる? @Olaf –

答えて

1

あなたはpocketsphinxライブラリにもリンクする必要があります:

gcc -I /home/noahchalifour/libraries/pocketsphinx/include \ 
    -I /home/noahchalifour/libraries/sphinxbase/include \ 
    -L /home/noahchalifour/libraries/pocketsphinx/lib \ 
    -L /home/noahchalifour/libraries/sphinxbase/lib \ 
    -lpocketsphinx -lsphinxbase -lsphinxad 
    pocketsphinx.c -o pocketsphinx 

私はの位置を推測しました、libsphinxbase.soおよびlibsphinxad.soは、インクルードに指定した接頭辞を使用します。

関連する問題