2011-09-09 22 views
0

Nowdays Windows上でMSYSを使用してソースからlibsamperateをビルドしようとしていますが、FFTW & libsndfileをインストールした設定チェックの問題を満たしています。それらのインクルードファイルのlibファイルとpkg-configファイルすべての適切な場所にありますが、libsamprate出力は常に設定チェックの解決方法

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

を言及するために、私はメイクファイルを生成するために、SH ./configureを使用するとき、私はまたPKG_CONFIG_PATH(usr/local/libディレクトリ/ pkgconfig)を設定し、何度もが、結果を試してみました

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

+0

configureスクリプトは実行された正確なチェックと生成されたエラーメッセージを表示する 'config.log'ファイルを残しています。それはむしろ大きいですが、それを見て、pkg-configテストに関連するセクションを見つけようとします(pkg-configが見つからなかったため、SNDFILEを見つけることができなかったので、気にしないでくださいチェックしてください)。正しく設定されていないものが手がかりにならない場合は、関連するビットを質問に追加してみてください。 –

+0

私はログファイルをチェックしましたが、それほど有益な情報ではないようです... – Hugo

+0

sh.exeがサードパーティライブラリを検索する方法について何か説明できますか? – Hugo

答えて

-1

コメントに記載されているとおり、環境は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 =:を指定してconfigureを起動する習慣を身につけてください。 (引数としてそのようなフラグを渡すことができない古いautoconfに依存するパッケージを使用している場合は、適切なアクションが何であるか分かりませんが、パッケージメンテナのアップグレードはおそらく悪い考えではありません)。

+0

あなたの素晴らしい答えをありがとう:) – Hugo

+0

この回答は完全に愚かです。特定のライブラリには特別なCFLAGSとLDFLAGSが必要な場合があるので、pkg-configはCFLAGSとLDFLAGSを手動で渡すよりも* LOT *に優れています。 pkg-configは使い方が簡単で、環境変数PKG_CONFIG_PATHとクロスコンパイルしている場合はPKG_CONFIG_SYSROOT_DIRだけで構成されています。 –

+0

@Thomas pkg-configは使い方が簡単で便利なツールです。 PKG_CHECK_MODULESは決して使うべきではない恐ろしいものです。 CFLAGSまたはLDFLAGSを手動で設定する必要はありません。それはconfig.siteのためのものです。 PKG_CHECK_MODULESはツールの使い方を知らない人のための松葉杖であり、多くの場合、問題を引き起こします。これは何年もの間、広告中毒について議論されており、autotoolメーリングリストの合意はそれが忌み嫌われているということです。 –

関連する問題