現在、RHELリポジトリを購読していません。必要なパッケージを入手するためにEPELを使用しています。
目的:テスト用に複数のvirtualenvフォルダを設定しようとしています。 Python 2.7を使用する設定があり、Python 3.7を使用して別の設定を作成したいと思います。次に、pipを介してAnsibleをインストールします。
私は何をしていますか:
システムPython 2.7を維持しながら、RHEL 6.8にPython 3.7をインストールしようとしています。私はこの分野の経験が多く、提案やその他のソリューションで開かれています。
Python 3.7.0をインストールするために、次のコマンドを実行しました。
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
./configure --prefix=$HOME/python3.7
make
make install
完了すると、「ModuleNotFoundError: '_ctypes'というモジュールはありません」というメッセージが表示されます。
~/python3.7/bin/python3 から Python 3.7 にアクセスできます。
bin]$ ./python3
Python 3.7.0 (default, Oct 5 2018, 11:09:23)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-23)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
しかし、pipをインストールしようとしたときに問題が発生しました。
wget https://bootstrap.pypa.io/get-pip.py
./python3 get-pip.py
Traceback (most recent call last):
File "get-pip.py", line 20890, in <module>
main()
File "get-pip.py", line 197, in main
bootstrap(tmpdir=tmpdir)
File "get-pip.py", line 82, in bootstrap
import pip._internal
File "/tmp/tmp4d087g4p/pip.zip/pip/_internal/__init__.py", line 40, in <module>
File "/tmp/tmp4d087g4p/pip.zip/pip/_internal/cli/autocompletion.py", line 8, in <module>
File "/tmp/tmp4d087g4p/pip.zip/pip/_internal/cli/main_parser.py", line 12, in <module>
File "/tmp/tmp4d087g4p/pip.zip/pip/_internal/commands/__init__.py", line 6, in <module>
File "/tmp/tmp4d087g4p/pip.zip/pip/_internal/commands/completion.py", line 6, in <module>
File "/tmp/tmp4d087g4p/pip.zip/pip/_internal/cli/base_command.py", line 18, in <module>
File "/tmp/tmp4d087g4p/pip.zip/pip/_internal/download.py", line 38, in <module>
File "/tmp/tmp4d087g4p/pip.zip/pip/_internal/utils/glibc.py", line 3, in <module>
File "/home/jmossman/python3.7/lib/python3.7/ctypes/__init__.py", line 7, in <module>
from _ctypes import Union, Structure, Array
ModuleNotFoundError: No module named '_ctypes'
オンラインで確認した結果、以前もこの問題が発生したようです。私が見た多くの解決策は、_ctypesモジュールに必要なものがないことを示唆しています。
https://bugs.python.org/issue31652 https://stackoverflow.com/questions/27022373/python3-importerror-no-module-named-ctypes-when-using-value-from-module-mul
一般的なパッケージはlibffi-devです。
このパッケージや他のパッケージが欠落しているようです。私のシステムを確認したところ、libffiはありますが、libffi-develやlibffi-devはありません。 zlib-develがインストールされていることを確認できました。 RHEL 6.8用のlibncursesw5-dev、libgdbm-dev、libc6-dev、zlib1g-dev、libsqlite3-dev、またはtk-devが見つかりません。私に彼らが必要かどうかはわかりません。
この時点では、実際の問題が何であるかよくわかりません。必要なパッケージがありませんか? ./configure --prefixとmakeを使ってインストールしたので、必要なパッケージを認識するPythonの機能に問題がありますか?