使用virtualenv -p /usr/local/bin/python3.4 py34env
安装python3环境报错,缺少zlib
可在python中导入zlib
缺没有报错,错误如下:
[root@localhost crazycabbage]# virtualenv -p /usr/local/bin/python3.4 py34env
Running virtualenv with interpreter /usr/local/bin/python3.4
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/virtualenv.py", line 22, in <module>
import zlib
ImportError: No module named 'zlib'
[root@localhost crazycabbage]# python
Python 2.7.5 (default, Nov 20 2015, 02:00:19)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import zlib
>>>
Google后说在编译时加上--with-zlib
,可报错 unrecognized options: --with-zlib
,求大神帮忙!
怪我咯2017-04-17 17:37:13
CentOS-7
は、Python2.7.5
の下に shell
を入力した後に入力するインタープリターに記述されているように、デフォルトで Python
としてインストールされます: Python 2.7.5 (default, Nov 20 2015, 02:00:19)。
Python3.4
は自分でインストールする必要があります。2.7.5
はダウンロードできるのに import zlib
がダウンロードできない理由は、3.4
ライブラリに 3.4
ライブラリがないことが原因である可能性があります。最初に zlib
が存在するかどうかを確認する必要があります 3.4
。 zlib
と入力して /usr/local/bin/python3.4
のインタープリタに入り、次に 3.4
を入力して import zlib
例外が報告されているかどうかを確認します。報告されている場合は ImportError
、すべてが正常であれば、引き続き次の内容を読み続けます。普通です、私に渡してください メッセージを残してください……
がインストールされていることを確認するには、Python
バージョンに対応する zlib
を再コンパイルしてインストールする必要があります。zlib
もインストールすることをお勧めします。 zlib-devel
などのパッケージ マネージャーを使用してインストールすると、インストール プロセス中に「すでに存在します」や「インストールされています」(もちろん英語) などの単語が表示されます。強制インストール後も使用できません。 Yum
のライブラリ ディレクトリにインストールされているためです。解決策は次のとおりです。
Python2.7
リーリー
Python2.7.5
出力結果:
最も直接的な方法は、Python3.4 のシステム パスに必要なディレクトリを追加することです。
まず、システムのデフォルトの Python を Python2.7.5 ではなく Python3.4 に変更します。
リーリー
ターミナルに
次に、Python
を実行してシステム環境変数を編集します。編集モードに入ったら、ファイルの最後に次の文を追加します。xxx は必要なライブラリ ディレクトリです。コロンで区切ります。ターミナルに
を入力してターミナルを有効にするか、デバイスを直接再起動します。 vim ~/.bashrc
どのディレクトリ export PYTHONPATH=$PYTHONPATH:/usr/lib64/python2.7/xxx/:/usr/lib64/python2.7/xxx/
が入っているかをどうやって知ることができるのかと疑問に思われるかもしれません。ああ、わかった、最後まで人々を助けてください... source ~/.bashrc
インタプリタを入力し、上記の zlib
ディレクトリ出力を 1 つずつ
リストに Python3.4
入れてから、2.7
試してみてください、いいえ、エラーが報告されるまで、この方法は粗雑ですが効果的です。 append
sys.path
ディレクトリ全体をインポートするのは直接的で便利ですが、3.4 ライブラリと競合する可能性があるため、import zlib
がどのファイルであるかを把握してから、
のシステム パスに移動することをお勧めします。 as zlib
これには copy
このファイルのみが必要です。 3.4
わかりません、ごめんなさい..._sqlite3
_sqlite3.so
試してみてください。理論的には実行できます。zlib
大家讲道理2017-04-17 17:37:13
--with-zlib
は、Pyton 3.4 のコンパイル時に追加したことを意味します。これは明らかに、Python 2.7 バージョンには zlib がコンパイルされていますが、3.4 にはコンパイルされていないことが原因です。