So-net無料ブログ作成
検索選択

configureのGTK+のチェックでエラー [プログラム]

ちょっと特殊な問題でしたが、 pkg-config がおかしな挙動をする、ということで、書いておきます。

linuxで、GUIのあるアプリをビルドしようとして、configureすると

      checking for GTK+ - version >= 2.6.0... no
      *** Could not run GTK+ test program, checking why...
      *** The test program failed to compile or link. See the file config.log for the
      *** exact error that occured. This usually means GTK+ is incorrectly installed.
      (以下、GTK 1.2.7も3.0.0もチェックでnoになる)

 で、「GTKがない」と言われてしまいます。
でも、GTK+パッケージは、2.xも3.0もインストール済みなのです。なんで?

前から、このエラーでコンパイルできなかったものがあったし、ということで、今回、解決するまで調査することにしました。

configureをいじって調べていくと、GTK+のチェック部分で、

      pkg-config gtk+-2.0
      pkg-config --uninstalled gtk+-2.0
で、どちらも1 (エラー)が返ってくるという、とんでも仕様。はぁ?
とりあえず、configureがこの先でやることを試そうとして
      pkg-config gtk+-2.0 --cflags
したら、
      libpng 16がインストールされているべきなのにないからエラーだよん
とか表示されてました。

ググって調べてみると
      http://www.linuxquestions.org/questions/slackware-14/fail-to-compile-wireshark-4175510119/
に、libpng14がないと、エラーすることがあるというのを見つけました。
同じ理由かも?

/libや/usr/libを調べてみると、
libpng12はインストールされてたけど、libpng16は入ってません。
なんでかなー...

記憶の彼方を探ると、
libping12でないと動作しない「重要な何か」があったから、固定したような、そうでないような。

とにかく、ま、libpng16をいれましょう。
      sudo apt-get install libpng-dev
で、どこに入れたんですか?
/lib/i386-linux-gnuには、libpng12のままで、16はありません。はて?
/usr/lib/i386-linux-gnuに12と16(1.6)が同居してました。

こんなめちゃくちゃなインストールでいいのでしょうか...

とりあえず、
     pkg-config gtk+-2.0 --cflags
が動くようになりました。
やれやれ、これで、今までどうしてもconfigureできなかったやつらがコンパイルできるようになります。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。