2016-04-06 10 views
0

私は数時間にわたってこれに対して壁に頭を打っています。私は、CMUSphinxのpocketsphinxライブラリを使って、OSX 10.10/XCode 7.2で動作していました。自分の.appバンドルを自分のコンピュータ以外のコンピュータでも動作させたいのです。最も重要なのは、.appバンドル(libpocketsphinx.3.dyliblibsphinxad.3.dylib、およびlibsphinxbase.3.dylib)に埋め込まれ、XCodeでRunpath Search Pathsの設定を使用して読み込まれる3つのダイナミックライブラリがあることです。ランパス検索パスは@ rpath/library.dylibであってもライブラリを見つけることができません

これを動作させる方法については、私が見つけたすべてを読んだことがあります。 .appバンドルは自分のマシンで意図したとおりにコンパイル/実行されることに注意してください。ライブラリが.appバンドルの/Contents/Frameworksフォルダにコピーされていることを確認しました。ライブラリは参照を使用していませんが、私のソースフォルダにコピーされます(CMUSphinxのこのページのこの正確な問題に関するフォーラムの投稿に従って)。私は@rpath/libraryname.dylibのためにinstall_name_toolを使用し、@loader_path@executable_pathを両方の実行可能ファイル(したがって、XCodeで@whatever_path /../ Frameworksに変更する)と3つのライブラリファイルで使用しています。私はまた別の投稿ごとに@loader_path/Frameworksを試しましたが、運はありません。

いただきまし奇妙なことがlibsphinxad.3.dylibをロードしているようlibsphinxad.3.dyliblibsphinxad.3.dylib両方がlibsphinxbase.3.dylibに依存していると私は取得していますエラーは、ようだが、私はクラッシュレポートにこのエラーを取得します

Dyld Error Message: 
    Library not loaded: /usr/local/lib/libsphinxbase.3.dylib 
    Referenced from: /Volumes/SunGate/VoiceCommander.app/Contents/Frameworks/libsphinxad.3.dylib 
    Reason: image not found 

注意、/Volumes/SunGate/私はこれをテストしている別のマシンのドライブです。

私はとなります。実際にはありがとうございます!私はこれを解決するのに役立つ情報を提供するために全力を尽くします!

答えて

0

システムで「find」コマンドを使用してこのlibが見つかりました。驚くことではないが、それは私がLN

/libに/は/ usr/localにそれをリンクされ、ここで

sphinxbase/SRC/libsphinxbase/.LIBS/libsphinxbase.3.dylib

でした - S sphinxbase/SRC/libsphinxbase/.LIBS/libsphinxbase.3.dylib /usr/local/lib/libsphinxbase.3.dylib

そして行くためにすべてのセット!

+0

もう少し説明できますか? –

関連する問題