2012-05-04 5 views
1

私はATLAS BLASライブラリusing this guideをインストールしようとしています。私は静的ライブラリーを使用していますが、位置独立ライブラリーも重要です。私はATLASのための正誤表を経てきましたが、この問題は」doesnのld:未知のオプション:-melf_x86_64 MacOSで共有ATLASライブラリをコンパイル中

$ make shared 
rm -f libatlas.so liblapack.so 
make libatlas.so liblapack.so libf77blas.so libcblas.so liblapack.so 
ld -melf_x86_64 -shared -soname libatlas.so -o libatlas.so \ 
     --whole-archive libatlas.a --no-whole-archive -lc -lpthread -lm 
ld: unknown option: -melf_x86_64 
make[1]: *** [libatlas.so] Error 1 
make: *** [shared] Error 2 

:私は、私は共有ライブラリを取得するにはmake sharedを発行することになっていると私は次のエラーを取得するガイドのポイントを取得します対処されているようだ。どんな方向に向かうのかアドバイスをいただければ幸いです。

--Andrew

+0

どのツールチェーン(およびバージョン)を使用していますか? – trojanfoe

+1

OS Xは "非エルフ"プラットフォームなので、リンカがelf固有のオプションを理解していないのは驚くべきことではありません。あなたの設定が間違っているとしか思えず、gnu/linux固有のオプションを使ってはいけません。 – talonmies

答えて

2

ld -melf_x86_64 -shared -soname libatlas.so -o libatlas.so --whole-archive libatlas.a --no-whole-archive -lc -lpthread -lm

このMakefileは偽

  1. です:1がはほとんどそれが上のGNU-LDを使用していることを想定して書かれたld
  2. と直接何かをリンクすることはありませんELF x86_64プラットフォーム(あなたの場合は間違っています)。

ご使用のプラットフォームに合わせてこの手順を調整する必要があります。適切なコマンドを使用してMacOS共有ライブラリを構築します(私はそれらが何であるか分かりませんが、検索エンジンやman ldを使用して見つけることができます)。

関連する問題