Ubuntu 14.04 32ビットを使用しています。ソースコードからアプリケーションをコンパイルしようとしています。 make
プロセスのリンク中にエラーメッセージが表示されます./autogen.sh
および./configure
はエラーなしで合格しました。このエラーが発生しましたundefined reference to g_variant_parse_error_quark
その関数を読んだg_variant_parse_error_quark
2.39でglib2に追加されました。インストールしたパッケージをチェックアウトしたところ、システムのlibglibバージョンが2.40.0であることがわかりました。しかしながら
pkg-config --modversion glib-2.0
レポート2.38.2
少なくとも2つの異なるglib2がインストールされているようです。過去にソースからglib2を手動でインストールした可能性があります。
その問題を修正し、システムに正しい最新のライブラリを使用させるにはどうすればよいですか?
私が推測したように、それは複数のライブラリの競合から生じました。走るとき
echo $PKG_CONFIG_PATH
空行を返しました
それから私は探しました
locate glib-2.0.pc
そして私は得た
/usr/lib/i386-linux-gnu/pkgconfig/glib-2.0.pc
/usr/lib/i386-linux-gnu/pkgconfig/spice-client-glib-2.0.pc
/usr/local/lib/pkgconfig/glib-2.0.pc
私も走る
pkg-config --debug --modversion glib-2.0
検索されたディレクトリを見つける
glib-2.0.pc
ファイルを調べて、バージョン番号をチェックアウトしました。
正しいglib-2.0.pc
ファイルを見つけました
それから私は走る
export PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig/
その後、./autogen.sh
およびmake
スムーズに行きました