0

Mac OS10.6.3にPyGTK2.16.0(Python GIMPツールキット)の次の依存関係をインストールしようとしました。

  • glib 2.25.5
  • gettext-0.18
  • libiconv-1.13.1

glibをインストールしようとすると、次のエラーメッセージが表示されます。

gconvert.c:55:2: error: #error GNU libiconv not in use but included iconv.h is from libiconv

libiconvのWebページでは、gettextとlibiconvの間の循環依存について説明しています。おそらく間違っていますが、私はこれをやろうとしました。(次のように機能しますmake distclean; ./configure; make; sudo make installか?)

投稿の作者も同じ問題を抱えていました。彼はlibiconv-1.13.1をインストールすることで問題を解決しました。

誰かがエラーをより詳細に説明し、それを修正する方法を教えてもらえますか?

4

4 に答える 4

2

それは古い質問ですが、それでも私のために働いた解決策を共有したいと思います。

'glib'フォルダー(メインのglibソースフォルダーの内側にあるプレーンglibのみ)に移動し、お気に入りのエディターで'gconvert.c'を開きます。

#if defined(USE_LIBICONV_GNU) && !defined (_LIBICONV_H)
#error GNU libiconv in use but included iconv.h not from libiconv
#endif

#if !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H)
#error GNU libiconv not in use but included iconv.h is from libiconv
#endif

次のように、最後の3行を置き換えます。

#if defined(USE_LIBICONV_GNU) && !defined (_LIBICONV_H)
#error GNU libiconv in use but included iconv.h not from libiconv
#endif

#if !(defined(__APPLE__) && defined(__LP64__)) && !defined(USE_LIBICONV_GNU) && defined (_LIBICONV_H)
#error GNU libiconv not in use but included iconv.h is from libiconv
#endif

出典: http: //letsneverdie.net/blog/?p = 75

于 2011-07-19T11:38:34.033 に答える
0

エラーメッセージの理由は、OS Xに現在(〜10.6.3)システムでインストールされているバージョンのlibiconvに対してglibをビルドする場合、-with-libiconv=gnuをglibconfigureスクリプトに渡す必要があるためです。ただし、これはデフォルトではGTK-OSXビルドスクリプトによって渡されません。

簡単な解決策は、最新のlibiconv(http://www.gnu.org/software/libiconv/#downloading)をダウンロードし、GTKインストールの場所をインストールプレフィックスとして渡して構成することです。

$ cd libiconv-1.13.1/
$ ./configure --prefix=/Users/jamie/gtk/inst/
$ make && make install

このバージョンのlibiconvでは、glibconfigureにpas--with-libiconv = gnuを実行する必要がないようです。そのため、glib configureステージを再実行することで、GTK-OSXビルドプロセスを続行できます。

于 2010-12-09T09:46:27.323 に答える
0

MacPortsパッケージマネージャーの信頼性がFinkパッケージマネージャーよりも低いという報告をたくさん見たので、 Finkをインストールしてから、単に実行することをお勧めします。

fink list pygtk  # Lists all pygtk packages
fink install pygtk2-gtk-py27  # This one, or the one that corresponds to your (Fink) Python

その上、FinkはMacPortsよりも多くのパッケージへのアクセスを提供します。

オープンソースプログラムを使うつもりなら、パッケージマネージャーへの「投資」は必須だと思います。

于 2010-12-09T09:51:20.877 に答える
-1

Macで、GTK +、PyGTK、またはその他の特定のプログラムをインストールする場合は、 MacPortsをダウンロードできます。

ターミナルで、port search gtkGTK+に関連するプログラムを検索するために入力します。インターネット接続が必要になります。

GTK sudo port install gtk2+2をインストールするために入力します。MacPortsは依存関係を見つけてインストールします。

入力port installedして、MacPortsを使用してインストールしたプログラムを表示します。

于 2010-08-11T00:17:58.080 に答える