Ich habe mich stundenlang an die Wand geschlagen. Ich habe mit der pussphinx-Bibliothek von CMUSphinx gespielt, die auf OSX 10.10/XCode 7.2 läuft, und möchte, dass mein .app-Bundle auf Computern außer meinem eigenen läuft. Am wichtigsten sind drei dynamische Bibliotheken, die in das .app-Bundle (libpocketsphinx.3.dylib
, libsphinxad.3.dylib
und libsphinxbase.3.dylib
) eingebettet und dann unter Verwendung von Runpath Search Paths
Einstellungen in XCode geladen werden müssen.Suchpfad Pfade können Bibliothek nicht finden, auch nicht mit @ rpath/library.dylib
Ich habe gerade über alles gelesen, was ich finden kann, wie man das zur Arbeit bringt. Ich sollte beachten, dass das .app Bundle kompiliert/läuft wie beabsichtigt auf meinem eigenen Rechner. Ich habe sichergestellt, dass die Bibliotheken in den Ordner /Contents/Frameworks
des .app-Bundles kopiert werden. Die Bibliotheken verwenden keine Referenzen, sondern werden in meinen Quellordner kopiert (wie in einem Forum-Beitrag zu genau diesem Thema auf der CMUSphinx-Seite). Ich habe fast jede Kombination der Verwendung von install_name_tool
für @rpath/libraryname.dylib
, sowie @loader_path
und sowohl in der ausführbaren Datei (so ändern es in XCode zu @whatever_path/../ Frameworks), sowie die drei Bibliotheksdateien versucht. Ich habe auch @loader_path/Frameworks
pro Post hier versucht, aber kein Glück.
Was seltsam ist der Fehler ich bin immer scheint, wie es libsphinxad.3.dylib
wird geladen, sowohl als libsphinxad.3.dylib
und libsphinxad.3.dylib
verlassen sich auf libsphinxbase.3.dylib
, aber ich habe diesen Fehler in der Crash-Bericht:
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
Hinweis, die /Volumes/SunGate/
ist nur eine Fahrt auf einer anderen Maschine, ich teste das auf.
Ich würde wirklich schätzen Hilfe dabei! Ich werde mein Bestes tun, um weitere Informationen zur Verfügung zu stellen, die zur Lösung dieses Problems beitragen könnten!
Können Sie etwas mehr erklären? –