autoconfのスクリプト内の非標準ライブラリの場所に対処するための通常の方法は何ですか?
-
09-09-2019 - |
質問
私は初めてGNU autoconfの/ automakeのツールチェーンを使用しようとしているので、私の質問への答えは些細なことかもしれません。
プログラムは、ヘッダーおよびライブラリは、非標準の場所にインストールされているのOpenGL / GLUTを必要とします。私は私のためにすべてのチェックを行う必要がありますこれらのマクロを見つけました。私は単純にのAX_CHECK_GLUT のとそれを呼んでいます。どのように私はマクロがライブラリを検索するのですか?私は
のようなものを探しています./設定--with-GLUT-DIR = /ホーム/飯能/ GLUT
より一般的には:autoconfのスクリプト内の非標準ライブラリの場所に対処する通常の方法は何ですか?もちろん、私はCPPFLAGSとLIBS変数で遊んことができますが、私は何かが欠けてる感じを持っています。
解決
Autotool群が設計されている方法は、パッケージの作者は、非標準の場所にインストールの前提条件をサポートするために何もする必要はありません。 ./configure --help
の出力は、次の行が含まれています。
LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
nonstandard directory <lib dir>
CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I<include dir> if
you have headers in a nonstandard directory <include dir>
インストーラは、非標準の場所にインストールの前提条件を持っている場合は、そのため、彼が発行する必要があります。
./configure CPPFLAGS=-I/non-standard-dir/include LDFLAGS=-L/non-standard-dir/lib
CPPFLAGS
とLDFLAGS
がconfigure
チェックとMakefile
ルールによって使用されているので、は、すべてが動作するはずです。
いくつかのパッケージの作者は、上記の省略形として--with-
のパッケージの=location
オプションを提供したいが、これは通常--with-
のパッケージのオプションの目的ではありません。これらのオプションは、オプションパッケージを使用するかどうかを指定する良く使用されています、またはどのように前提条件が満たさにする必要があります。
所属していません StackOverflow