2017-02-10 2 views
0

私はpkg-configターゲットはどこで定義されますか?

pkg-config --variable pc_path pkg-config 

コマンドを実行すると、出力が

は/ usr/lib64に/ pkgconfigです:を/ usr/share/pkgconfig

しかし、他の二つのpkgconfigのディレクトリがあります私のシステムで:/usr/lib/pkgconfig/usr/local/lib/pkgconfig

私が試してみたら

echo $PKG_CONFIG_PATH 

結果は

未定義変数

あるIはまた

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig 

しようとしたが、応答は

ました

export:コマンドが見つかりません。

さて、私は複数の機会にGStreamerを構築している

、それは他のpkgconfigフォルダ(libには/ usr/local/pkgconfig)に メタデータファイル(のgstreamer-1.0.pc)を入れます。 (私はconfigureファイルを変更してlibdirの定義でlib64にlib64を変更することでこの問題を克服することができました)しかし、私はむしろ回避策を試すのではなく、私のシステムを理解しています。

2つの質問:pkg-configプログラムはどこでターゲットディレクトリを取得しますか?

メタデータファイルは、pkg-configプログラムで明白に示されていないディレクトリに入れられるのはなぜですか?

+0

感謝を。与えられた答えは実際に私の2つの質問に答えませんが、私は解決策を得る努力を感謝します。 – jackson80

答えて

0

その変数は、変数が、この コマンド ENV ルート@ localhostの実行行うためにそこかではないことを 最初のチェック存在していなかったため、コマンドが動作していませんので:パスがある場合は/ etc/aptの#1のenv の/ etc/aptの#1 PKG_CONFIG_PATH =は/ usr/local/lib/pkgconfig ルート@ localhostの:の/ etc/aptの#輸出PKG_CONFIG_PATH ルート@ localhostを:その後、

ルート@ localhostのような何かを行うENV に宣言していません/ etc/apt#echo $ PKG_CONFIG_PATH /usr/local/lib/pkgconfig root @ localhost:/ et C/aptの#1 envを使用すると、fooパッケージをインストールすると、これはエラー

+0

私はtschを使用していたので、私のコマンドのエクスポートがうまくいかないことがわかりました。私がbashに切り替えると、エクスポートを使用することができます。 – jackson80

0

でクエリを投稿してください任意の助けをお のために動作します

希望は、fooパッケージはにインストールされる適切なfoo.pcを持っていますデフォルトのpkgconfigディレクトリ。あなたが知っているように、パッケージが* .pcファイルをカスタムの場所に置く場合は、それに応じてPKG_CONFIG_PATHを設定する必要があります。したがって、pkg-configは、デフォルトのディレクトリだけでなく、PKG_CONFIG_PATHで指定したカスタムパスを調べます。このガイドでは、それをうまく説明:私の悪い提示の質問を編集するための@Grishaレヴィットへ

pkg-config guide

関連する問題