0

したがって、私のMacは_imagingで正しくセットアップされていますが、mkvirtualenv myprojectで新しいvirtualenvを作成し、pythonインタープリターを実行するとすぐに

import _imaging
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: dlopen(/Library/Python/2.7/site-packages/PIL/_imaging.so, 2): Symbol not found: _jpeg_resync_to_restart
  Referenced from: /Library/Python/2.7/site-packages/PIL/_imaging.so
  Expected in: flat namespace
 in /Library/Python/2.7/site-packages/PIL/_imaging.so

私は次のようになります。

イメージング ライブラリを virtualenv に追加する簡単な修正方法はありますか?

4

4 に答える 4

1

Python のバージョンを指定し、virtualenv が自己完結型であることを確認したとき (サイト パッケージが使用されていないとき) が最も幸せでした。

これを .bashrc に追加します。

export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages --python=python2.6'
source /usr/local/bin/virtualenvwrapper.sh
于 2011-08-05T23:45:15.917 に答える
1

前のコメントを信じないでください。Macports Python + PIL は問題なく動作します :)

エラー メッセージに基づいて、OSX 独自の Python およびライブラリと Macports のもの (間違ったバージョン) が混在している可能性があります。

  • OSX Python ではなく、Macports Python を使用して virtualenv をインストールします (インタープリターを強制するコマンド ライン スイッチ)。

  • ネイティブの依存関係ライブラリを Macports にインストールします (リストはどこにあります... 私はそれを持っています)

  • easy_install PIL - PIL をコンパイルし、コンパイル後にステータス レポート (JPEG: OK、PNG: OK など) を出力します。

... または、PIL を virtualenv にシンボリック リンクすることもできます ...:

http://blog.mfabrik.com/2009/11/19/installing-python-imaging-library-pil-under-virtualenv-or-buildout/

于 2011-08-05T22:47:07.717 に答える
0

そのため、10.6から10.7にアップグレードしてから少し問題があり、これを整理するのに数日かかりました。

その後、Pythonを64ビット、MySQLを64ビットとして再コンパイルし、完全に機能するPILを備えており、_imagingはvirtualenvでも機能します。

XCodeの以前のインストールをすべて削除しました。

64ビットバージョンのPython2.7.2をダウンロードしてインストールしました

libjpegを64ビットで再コンパイル

まず第一に、libjpegの最新バージョン、私のものはバージョン8cでした

sudo make clean
sudo CC="-arch x86_64" ./configure --enabled-static --enable-shared
make
sudo make install

次に、Imaging-1.1.6を取得します

untarとcdに

vi setup.py
JPEG_ROOT="/usr/local/lib"
sudo python setup.py install

とテスト

次に、mkvirtualenvtestenvを使用してvirtualenvを作成して実行できるはずです。sudo pip install http://effbot.org/downloads/Imaging-1.1.6.tar.gz

于 2011-08-09T13:02:12.607 に答える