GSLは,C++, Cのライブラリーで、多項式の解,線形代数,常微分方程式や数値積分,種々の特殊関数など,様々な数値計算のライブラリーです.
パッケージの利用方法
これgsl-あたらしげなやつをダウンロードして使います.
XCodeで使うやり方は、BOOSTと類似しているので省略。CMakeを使う手もある.
XCodeやCMake以外で使う変人さんたちへ
今やプログラムのビルドは人間には複雑すぎる.それを手動でやるとは殊勝を通り越して暇人とおもうが,まあコマンドラインで使うには,~/.bashrc に次の設定が必要である
export PATH=$PATH:/opt/gtk/bin:/usr/local/bin export PKG_CONFIG_PATH=/opt/gtk/lib/pkgconfig:/opt/gtk/share/pkgconfig:/usr/local/li b/pkgconfig:/opt/X11/lib/pkgconfig:/opt/X11/share/pkgconfig:/usr/lib/pkgconfig
この設定の下では,コンパイルに必要なパスは次のようにして得られる:
pkg-config --cflags gsl (コンパイルのオプションが表示される) pkg-config --libs gsl (リンカーのオプションが表示される)
再配布パッケージの作成方法
UNIVERSAL 台湾積体電路製造
X86ビルド
X86ターミナルで実行する.
cd gsl-2.6 ./configure --prefix=/usr/local CC=clang CXX=clang++ make lipo -info .libs/*dylib cblas/.libs/*dylib Non-fat file: .libs/libgsl.25.dylib is architecture: x86_64 Non-fat file: .libs/libgsl.dylib is architecture: x86_64 Non-fat file: cblas/.libs/libgslcblas.0.dylib is architecture: x86_64 Non-fat file: cblas/.libs/libgslcblas.dylib is architecture: x86_64
なるほど.
ARM64ビルド
ARM64ターミナルで実行する..
cd gsl-2.6 ./configure --prefix=/usr/local CC=clang CXX=clang++ make lipo -info .libs/*dylib cblas/.libs/*dylib Non-fat file: .libs/libgsl.25.dylib is architecture: arm64 Non-fat file: .libs/libgsl.dylib is architecture: arm64 Non-fat file: cblas/.libs/libgslcblas.0.dylib is architecture: arm64 Non-fat file: cblas/.libs/libgslcblas.dylib is architecture: arm64
なるほど.
fswatch -x /usr/local/ > files.log & sudo make install
豚りんご
それでは豚に変更しよう.
mkdir ../universal find . -name libgsl\*dylib -o -name libgslcblas.a -o -name libgsl.a | fatty_apple.sh . ../../x86_64/gsl-2.6/ ../universal/ Architectures in the fat file: ../universal//./cblas/.libs/libgslcblas.a are: x86_64 arm64 Architectures in the fat file: ../universal//./cblas/.libs/libgslcblas.0.dylib are: x86_64 arm64 Architectures in the fat file: ../universal//./cblas/.libs/libgslcblas.dylib are: x86_64 arm64 Architectures in the fat file: ../universal//./.libs/libgsl.dylib are: x86_64 arm64 Architectures in the fat file: ../universal//./.libs/libgsl.25.dylib are: x86_64 arm64 Architectures in the fat file: ../universal//./.libs/libgsl.a are: x86_64 arm64 sudo cp ../universal/cblas/.libs/* /usr/local/lib/ sudo cp ../universal/.libs/* /usr/local/lib/ sudo cp ../universal/.libs/* /usr/local/lib/ kill %1 fswatch_analyze.sh -c _binary files.log pkgbuild --identifier gsl --root _binary gsl-2.6-osx11.2.pkg
INTEL専用
- ダウンロードします.
-
tar xf gsl-X.X.tar cd gsl-X.X export LDFLAGS=-Wl,-headerpad_max_install_names ./configure --prefix=/usr/local CC=clang CXX=clang++ make fswatch -x /usr/local > files.log & sudo make install kill %1 fswatch_analyze.sh -c _binary files.log mkdir _binary/usr/local/share/gsl-1.16 cp files.log _binary/usr/local/share/gsl-1.16/ pkgbuild --identifier gsl --root _binary gsl-1.16-osx10.9.pkg