18

Xcode4 は PPC サポートを削除したため、PIL をビルドしようとすると、ヘイトがスローされます。

Bens-MacBook-Air:Imaging-1.1.7 bkeating$ python setup.py build
running buildrunning build_pyrunning build_ext
--- using frameworks at /System/Library/Frameworks
building '_imaging' extension
/usr/bin/gcc-4.0 -fno-strict-aliasing -fno-common -dynamic -DNDEBUG -g -fwrapv -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch ppc -arch x86_64 -pipe -DHAVE_LIBJPEG -DHAVE_LIBZ -I/System/Library/Frameworks/Tcl.framework/Headers -I/System/Library/Frameworks/Tk.framework/Headers -I/usr/local/include/freetype2 -IlibImaging -I/System/Library/Frameworks/Python.framework/Versions/2.6/include -I/usr/local/include -I/usr/include -I/System/Library/Frameworks/Python.framework/Versions/2.6/include/python2.6 -c decode.c -o build/temp.macosx-10.6-universal-2.6/decode.o
/usr/libexec/gcc/powerpc-apple-darwin10/4.2.1/as: assembler (/usr/bin/../libexec/gcc/darwin/ppc/as or /usr/bin/../local/libexec/gcc/darwin/ppc/as) for architecture ppc not installed
Installed assemblers are:
/usr/bin/../libexec/gcc/darwin/x86_64/as for architecture x86_64
/usr/bin/../libexec/gcc/darwin/i386/as for architecture i386
decode.c:688: fatal error: error writing to -: Broken pipe
compilation terminated.
lipo: can't open input file: /var/folders/jW/jW0VkC8uEb4lAjcJou+OaU+++TI/-Tmp-//ccEmCpUp.out (No such file or directory)
error: command '/usr/bin/gcc-4.0' failed with exit status 1

その最初の行を手動で実行し、オプションを削除しました-arch ppcが、エラーは報告されませんでしたが、ビルド プロセスを再実行すると、この手動の試行は無視されます。`gcc-4.0 も存在しないので、gcc-4.2 にシンボリックリンクしました。

先に進んで Xcode3 をインストールしてから 4 をインストールすることもできますが、新しくインストールしたものを台無しにしたいと考えています。

PIL に PPC 用にコンパイルしないように指示する方法はありますか? ディストリビューション全体で grep を実行しましたが、PPC. 何か案は?

4

4 に答える 4

38

解決策は PIL とは関係なく、gcc の ARCHFLAG を設定します。

ARCHFLAGS="-arch i386 -arch x86_64" sudo pip install PIL
于 2011-03-20T16:45:20.893 に答える
16

ARCHFLAGS は sudo に渡されないようです。私がしなければなりませんでした

sudo -s

それARCHFLAGS="-arch i386 -arch x86_64" pip install PIL を機能させるために。

于 2011-04-02T15:57:54.050 に答える
14

私の意見では、この問題を解決するより良い方法は、 ~/.profile または /etc/bashrc を編集して次の行を追加することです。

export ARCHFLAGS="-arch i386 -arch x86_64"

将来のインストールをいじる必要がなくなります (CPAN に多数の Perl モジュールをインストールするためにこれを行う必要がありました)。

于 2011-05-06T14:14:55.553 に答える
1

他の人を助けるためだけに...SnowLeopard / XCode 4システムでイメージングを構築する前に、ARCHFLAGS = "-arch x86_64"を使用する必要がありました。つまり、"-archi386"を使用すると機能しなくなりました。

于 2011-03-23T11:18:04.383 に答える