4

私は autotools の初心者ですが、autotools で外部ライブラリを正しく使用する方法がわかりません。

これが私のディレクトリ階層です。

.
├── configure.ac
├── Makefile.am
├── README
└── src
    (source files)
    └── Makefile.am

ライブラリの名前はacml_mpであり、デフォルトでは にインストールされてい/opt/acml5.3.1/gfortran64/libます。includeと呼ばれるディレクトリもあり/opt/acml5.3.1/gfortran64/includeます。autotools なしでコンパイルすると、通常のコンパイラ フラグを含めて正常に動作します。

g++ ... -L/opt/acml5.3.1/gfortran64_mp/lib -I/opt/acml5.3.1/gfortran64_mp/include -lacml_mp ...

configure.ac に、フラグAC_LIB_LINKFLAGS([acml_mp])のみを扱うと思われるコマンドを入れました。-lacml_mp

基本的に、最終的な目標は、autoconf でこのライブラリを検索し、コンパイル時に automake によって生成された makefile に正しいリンク/インクルード パスを含めることです。最後に、手動でコンパイルするときは、常にLD_LIBRARY_PATHコマンドを使用して環境変数を変更する必要があります

Export LD_LIBRARY_PATH=/opt/acml5.3.1/gfortran64_mp/lib:$LD_LIBRARY_PATH

理想的には、ユーザーにそれをさせたくないのです。この情報が既に存在する場合は申し訳ありません。SO と Google を数時間調べましたが、役に立ちませんでした。

4

1 に答える 1