0

現在、Windows で MSYS を使用してソースから libsamperate をビルドしようとしていますが、以前に FFTW と libsndfile をインストールしたことがある構成チェックの問題に遭遇しました。それらのインクルード ファイル lib ファイルと pkg-config ファイルはすべて適切な場所にありますが、 sh を使用./configureして libsamprate の makefile を生成すると、出力に常に言及されます

checking for pkg-config... no
checking for SNDFILE... no

PKG_CONFIG_PATH(usr/local/lib/pkgconfig) も設定して何度も試してみましたが、結果は同じようです

誰もこれについて何か知っていますか?

4

1 に答える 1

-1

コメントで述べたように、環境は pkg-config 実行可能ファイルを実行するように設定されていません。pkg-config に関連する多くの問題があり、正しい解決策は pkg-config の使用を完全に停止することであると提案することがますます一般的になっています。残念ながら、pkg-config を使用するパッケージをインストールしようとしている場合、そのソリューションを使用する立場にはありません。最も近い方法は、環境で PKG_CONFIG を「true」または「:」に設定することです。これにより、pkg-config は出力を出さず、実行時に常に true を返すため、標準メカニズム (LDFLAGS など) を介してライブラリとヘッダーの場所を指定する必要があります。

pkg-config は、ユーザー (パッケージをインストールする人) が標準フラグを知らなくてもよいという点で優れています。pkg-config の問題は、ユーザーが無知であることを許してしまうことです。

パッケージのメンテナーとして、pkg-config の使用を停止する必要があります。ユーザーとして、環境または config.site で PKG_CONFIG=: を設定するか、引数として PKG_CONFIG=: を使用して構成を呼び出す習慣を身に付ける必要があります。(そのようなフラグを引数として渡すことができない古い autoconf に依存するパッケージを使用している場合、適切なアクションが何であるかはわかりませんが、パッケージのメンテナーのアップグレードはおそらく悪い考えではないことを示唆しています。)

于 2011-09-11T13:09:37.967 に答える