LoginSignup
3
0

More than 5 years have passed since last update.

python3 開発環境構築 on WSL

Posted at

はじめに

  • 気づいたらすでに python も python3 もインストールされていましたが pyenv で python をインストールして使うように設定してみました
  • 以下をインストールしてパスを通します
    • pyenv
    • pipenv
    • python3
  • ※すでに rails な開発環境は導入済なので以下の手順の通り実施しても何かしらライブラリ不足があるかもしれません

環境

  • Windows10
  • ubuntu 18.04 on WSL
  • fish

install pyenv


$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
$ echo 'set PATH $HOME/.pyenv/bin $PATH' >>  ~/.config/fish/config.fish
$ echo 'eval (pyenv init - | source)' >>  ~/.config/fish/config.fish
$ eval (pyenv init - | source)
$ which pyenv
/home/yourname/.pyenv/bin/pyenv

install python3.7.0

  • インストールできるバージョンを確認

$ pyenv install --list
  ...
  3.6.6
  3.7.0
  3.7-dev
  3.8-dev
  ...
  • 現在時点での最新の3.7.0 をインストールしてみる

$ pyenv install -v 3.7.0
  • しばらく待った後以下のエラーで失敗

Traceback (most recent call last):
  File "/tmp/python-build.20180910235918.12705/Python-3.7.0/Lib/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/tmp/python-build.20180910235918.12705/Python-3.7.0/Lib/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmp/python-build.20180910235918.12705/Python-3.7.0/Lib/ensurepip/__main__.py", line 5, in <module>
    sys.exit(ensurepip._main())
  File "/tmp/python-build.20180910235918.12705/Python-3.7.0/Lib/ensurepip/__init__.py", line 204, in _main
    default_pip=args.default_pip,
  File "/tmp/python-build.20180910235918.12705/Python-3.7.0/Lib/ensurepip/__init__.py", line 117, in _bootstrap
    return _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
  File "/tmp/python-build.20180910235918.12705/Python-3.7.0/Lib/ensurepip/__init__.py", line 27, in _run_pip
    import pip._internal
  File "/tmp/tmpirqvyjxt/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/__init__.py", line 42, in <module>
  File "/tmp/tmpirqvyjxt/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/cmdoptions.py", line 16, in <module>
  File "/tmp/tmpirqvyjxt/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/index.py", line 25, in <module>
  File "/tmp/tmpirqvyjxt/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/download.py", line 39, in <module>
  File "/tmp/tmpirqvyjxt/pip-10.0.1-py2.py3-none-any.whl/pip/_internal/utils/glibc.py", line 3, in <module>
  File "/tmp/python-build.20180910235918.12705/Python-3.7.0/Lib/ctypes/__init__.py", line 7, in <module>
    from _ctypes import Union, Structure, Array
ModuleNotFoundError: No module named '_ctypes'
Makefile:1122: recipe for target 'install' failed
make: *** [install] Error 1

BUILD FAILED (Ubuntu 18.04 using python-build 1.2.7-3-g5603eb51)
  • モジュールが足りないのでインストールする

$ sudo apt install libffi-dev
  • リトライ

$ pyenv install -v 3.7.0

...

Installing collected packages: setuptools, pip
Successfully installed pip-10.0.1 setuptools-39.0.1
/tmp/python-build.20180911001219.25285 ~
~
Installed Python-3.7.0 to /home/ospear/.pyenv/versions/3.7.0
  • インストール成功
$ which python
/home/yourname/.pyenv/shims/python
$ pyenv global 3.7.0
$ python --version
Python 3.7.0

install pipenv


$ which pip
/home/yourname/.pyenv/shims/pip
$ pip --version
pip 10.0.1 from /home/yourname/.pyenv/versions/3.7.0/lib/python3.7/site-packages/pip (python 3.7)
$ pip install --upgrade pip
$ pip --version
pip 18.0 from /home/yourname/.pyenv/versions/3.7.0/lib/python3.7/site-packages/pip (python 3.7)
$ pip install pipenv
$ which pipenv
/home/yourname/.pyenv/shims/pipenv
$ pipenv --version
pipenv, version 2018.7.1

参考

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0