Xcode, building und dylibs
Ich habe ein paar verwandte Fragen angeschaut und kann anscheinend keine Lösung für mich finden.
rundsätzlich verwende ich die libmp3lame.dylib in meinem Xcode-Projekt. Der Installationsprozess für lame hat die .dylib erzeugt und in usr / local / lib abgelegt. Um Xcode zum Erstellen und Ausführen des Projekts zu erhalten, habe ich die Bibliothekssuchpfade so geändert, dass sie den obigen Ordner enthalten. Das funktioniert gut.
Nun ist es an der Zeit, eine Release-Version zu produzieren, und ich möchte die .dylib in das Bundle aufnehmen, damit der Benutzer keine Installationsphase oder ähnliches in Kauf nehmen muss. Ich habe eine Phase zum Kopieren von Dateien des Ziels erstellt und dabei die .dylib in den Frameworks-Ordner im Inhalt des Bundles kopiert. Das Ausführen von otool auf der Binärdatei zeigt jedoch, dass der Compiler die .dylib nicht im Bundle verwendet, sondern mit der Version usr / local / lib verknüpft hat (auch wenn ich diese Version lösche).
Wenn ich mir die anderen Ergebnisse in der Ausgabe von otool ansehe, habe ich andere Frameworks, die mit dem Bundle verknüpft sind, nur nicht die .dylib. Wenn ich mir die Eigenschaften für beide Frameworks und die .dylib in Xcode ansehe, sehe ich keine anderen Unterschiede als den Dateityp.
Meine Suche deutet darauf hin, dass ich rpath oder ähnliches verwenden muss, aber ich habe keine Ahnung, wo ich das in Xcode anwenden soll.