Mein Xcode-Ziel verlinkt gegen die hdf5-Bibliothek (unter Verwendung der Link-Binär-mit-Bibliotheken-Build-Phase). libhdf5 wird mit MacPorts installiert, daher enthält/opt/local/lib sowohl die dynamische (.dylib) als auch die statische (.a) Version der Bibliothek.Statische Verknüpfung der mit Xcode-Ziel verknüpften Bibliothek erzwingen?
Die Textausgabe vom Build zeigt, dass es im Verknüpfungsschritt des Builds wie erwartet einen -lhdf5
gibt. gcc scheint jedoch die dynamisch verknüpfte Bibliothek über die statische zu nehmen. Gibt es eine Möglichkeit, gcc (über einen Compiler-Switch oder über Xcode) zu zwingen, statisch mit libhdf5.a zu verlinken?
Die einzige Lösung, die ich gefunden habe, ist libhdf5.a in das Projekt (oder andere) Verzeichnis zu kopieren und mit dieser Kopie zu verknüpfen, so dass dynamische und statische Versionen am gleichen Ort vermieden werden.
Ich würde gerne einige aktualisierte Antworten auf diese Frage zu sehen mit Anweisungen für neuere Versionen von Xcode. – livingtech