0

cygwin で autoconf/automake 構成スクリプトを使用していますが、依存関係が見つからないという問題があります。

たとえば、configure.ac で次のようにします。

AC_CHECK_LIB(mp3lame,lame_init,,AC_MSG_ERROR(必要なライブラリ LAME が見つかりません。)) AC_CHECK_HEADER(lame/lame.h,,AC_MSG_ERROR(LAME のヘッダーが見つかりません。))

足の不自由な人を見つける。Lame がインストールされていlocate lame.hます/usr/local/include/lame/lame.h。ここで、LIBRARY_PATH と INCLUDE_PATH を次のように設定すると、

export INCLUDE_PATH=/usr/local/include/ export LIBRARY_PATH=/usr/local/lib/

期待どおりに動作します。ダウンロードして実行することで、ラメをインストールしました:

./configure
make
make install 

したがって、構成スクリプトがそれを見つけるのに「十分な標準」パスになるはずだと思います。同様の方法で、次を使用して json パーサー jansson をチェックしています。

PKG_CHECK_MODULES(JANSSON,jansson)

そして、私がしない限り、それは見つかりません:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/

これは cygwin の問題ですか (私はそうは思いません)、それとも configure.ac スクリプトの問題ですか?

4

1 に答える 1

1

これは cygwin の問題でも、configure.ac の問題でもありません。これは の「機能」でPKG_CHECK_MODULESあり、使用しないことをお勧めする理由の 1 つです。を使用するconfigure.acから生成されたconfigureスクリプトを使用する場合PKG_CHECK_MODULES、ユーザーが設定する必要がありますPKG_CONFIG_PATH。最善の方法は、AC_CHECK_LIB代わりに を使用することですPKG_CHECK_MODULES./configure && make && make install動作するはずの標準インストールを提供するあなたは絶対に正しいです。問題は、PKG_CHECK_MODULES標準のインストールではうまくいかないことです。

于 2012-06-18T13:51:19.577 に答える