Ich möchte GNU wissenschaftliche Bibliothek in Swift verwenden, insbesondere möchte ich Routinen von gsl_rng.h
verwenden. So folge ich im Grunde https://github.com/apple/swift-package-manager/blob/master/Documentation/SystemModules.md (Ich verwende Linux, nicht OS X)Verknüpfen einer C-Bibliothek und ihrer unterstützenden Bibliothek in Swift (linux)
Ich schaffe das Modul als
module CGSL [system] {
header "/usr/include/gsl/gsl_rng.h"
link "gsl"
export *
}
Allerdings kann ich nicht mein Programm bauen, da ich viele Nachrichten von der Art erhalten undefined reference to 'cblas_dasum'
. Und in der Tat, wie die Dokumentation für GSL heißt
gegen die Bibliothek verknüpfen Sie sowohl die Hauptbibliothek und eine unterstützende cblas Bibliothek angeben müssen, die Standard-Grund Subroutinen lineare Algebra bietet. Eine geeignete CBLAS-Implementierung wird in der Bibliothek libgslcblas.a bereitgestellt, falls Ihr System keine bereitstellt. Das folgende Beispiel zeigt, wie eine Anwendung mit der Bibliothek verknüpfen,
$ gcc -L/usr/local/lib example.o -lgsl -lgslcblas -lm
Was soll ich sowohl -lgsl
und -lgslcblas
tun verbinden?
https://developer.apple.com/library/ios/recipes/xcode_help-project_editor/Articles/AddingaLibrarytoaTarget.html – Alexander