トップページ -> コンピュータ -> Ubuntu -> virtualenv, virtualenv wrapper を使う(Ubuntu 上)
[サイトマップへ], サイト内検索:

virtualenv, virtualenv wrapper を使う(Ubuntu 上)

金子邦彦研究室: データベース、人工知能(AI)、データサイエンスの融合により不可能を可能にする

目次

  1. 前準備
  2. Python 3, Python 2, pip のインストールと確認
  3. virtualenv, virtualenv wrapper のインストールと設定
  4. virtualenv を用いて Python バージョン3 環境の新規作成
  5. virtualenv を用いて Python バージョン2 環境の新規作成
  6. virtualenv, virtualenv wrapper の確認
  7. spyder 開発版 のインストール
  8. virtualenv の Python バージョン 3 環境でSWIG を使ってみる

前準備

Ubuntu のシステム更新

端末で,次のコマンドを実行.

sudo apt update 
sudo apt -yV upgrade
sudo shutdown -r now

Python 3, Python 2, pip のインストールと確認

  1. 端末を開く

  2. Python 3, Python 2, pip のインストール
    sudo apt -yV install python3-dev python3-pip
    sudo apt -yV install python-dev python-pip 
    

  3. python のバージョンの確認

    ※ エラーメッセージが出ないことを確認.

    python3 --version 
    python --version 
    

  4. pip の更新
    cd /tmp
    sudo rm -f get-pip.py
    wget https://bootstrap.pypa.io/get-pip.py
    sudo rm -rf ~/.cache/pip
    mkdir ~/.cache/pip
    sudo python3 get-pip.py
    sudo python get-pip.py
    sudo pip3 install --ignore-installed --upgrade virtualenvwrapper
    sudo pip install --ignore-installed --upgrade virtualenvwrapper
    

  5. pip3, pip の動作確認

    ※ エラーメッセージが出ないことを確認.

    pip3 list
    pip list
    

virtualenv, virtualenv wrapper のインストールと設定

  1. 端末を開く

  2. virtualenv, virtualenv wrapper のインストール
    sudo pip install -U virtualenv virtualenvwrapper
    sudo pip3 install -U virtualenv virtualenvwrapper
    

  3. virtualenv, virtualenv wrapper の設定

    エラーメッセージが出ていないことを確認

    export WORKON_HOME=$HOME/.virtualenvs
    export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
    source /usr/local/bin/virtualenvwrapper.sh
    touch ~/.profile
    echo -e "\n# virtualenv and virtualenvwrapper" >> ~/.profile
    echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.profile
    echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.profile
    echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.profile
    source ~/.profile
    

    virtualenvwrapper の使い方

    • mkvirtualenv <Python仮想環境名>: Python仮想環境の新規作成
    • workon: Python仮想環境の一覧表示
    • workon <Python仮想環境名>: Python仮想環境の有効化
    • deactivate: いま有効化されているPython仮想環境の無効化
source /usr/local/bin/virtualenvwrapper.sh
workon ai 

virtualenv を用いて Python バージョン3 環境の新規作成

  1. 新しく端末を開く

  2. システムの python3 のバージョンの確認
    which python3
    python3 --version 
    

    Ubuntu 18.04 での実行結果の例

  3. Python バージョン3 環境の新規作成

    名前: py36

    使用する Python: python3

    source /usr/local/bin/virtualenvwrapper.sh
    mkvirtualenv --python=/usr/bin/python3 py36
    

  4. 確認
    lsvirtualenv 
    

    py36」という新しい Python 環境が作成されたことが分かる

  5. 確認 の続き

    新しく端末を開き、次のコマンドを実行.

    「workon py36」は、py36 の Python 環境の使用を開始するためのコマンド. エラーメッセージが出なければ OK.

    source /usr/local/bin/virtualenvwrapper.sh
    workon py36
    which python
    which pip
    

  6. 試しに、py36 の Python 環境の Python を使ってみる
    source /usr/local/bin/virtualenvwrapper.sh
    workon py36
    python 
    print(1 + 2)
    exit()
    


virtualenv を用いて Python バージョン 2 環境の新規作成

  1. 新しく端末を開く

  2. システムの python のバージョンの確認
    which python
    python --version 
    

    Ubuntu 18.04 での実行結果の例

  3. Python 環境の新規作成

    source /usr/local/bin/virtualenvwrapper.sh
    mkvirtualenv --python=/usr/bin/python py27
    

  4. 確認
    lsvirtualenv 
    

    py27」という新しい Python 環境が作成されたことが分かる

  5. 確認 の続き

    新しく端末を開き、次のコマンドを実行.

    「workon py27」は、py27 の Python 環境の使用を開始するためのコマンド. エラーメッセージが出なければ OK.

    source /usr/local/bin/virtualenvwrapper.sh
    workon py27
    which python
    which pip
    

  6. 試しに、py27 の Python 環境の Python を使ってみる
    source /usr/local/bin/virtualenvwrapper.sh
    workon py27
    python 
    print(1 + 2)
    exit()
    


virtualenv, virtualenv wrapper の確認


spyder 開発版 のインストール

https://github.com/spyder-ide/spyder に記載の手順に従う

  • (オプション)もし、Python 仮想環境にインストールしていて、そこにインストールしたいとき、それを有効化する

    ※ Python 仮想環境を有効化したいときに限る

    source /usr/local/bin/virtualenvwrapper.sh
    workon ai 
    

  • インストール操作
    sudo pip3 install -U PyQT5
    sudo pip3 install -U git+https://github.com/spyder-ide/spyder-kernels
    sudo pip3 install -U git+https://github.com/spyder-ide/qtpy
    cd /tmp
    sudo git clone https://github.com/spyder-ide/spyder.git
    cd spyder 
    git pull 
    python bootstrap.py
    sudo python3 setup.py install 
    

    「spyder3」で、試しに起動してみる.


    virtualenv の Python バージョン 3 環境で SWIG を使ってみる

    1. SWIG のインストール (Install swig)
      sudo apt -yV install swig
      

    2. プログラムファイルの作成

      http://www.swig.org/Doc1.3/Python.html#Python_nn6 に記載のサンプルプログラム

      • example.i
        %module example
        
        %{
        #define SWIG_FILE_WITH_INIT
        #include "example.h"
        %}
        
        int fact(int n);
        

      • example.c
        #include "example.h"
        
        int fact(int n) {
            if (n < 0){ /* This should probably return an error, but this is simpler */
                return 0;
            }
            if (n == 0) {
                return 1;
            }
            else {
                /* testing for overflow would be a good idea here */
                return n * fact(n-1);
            }
        }
        

      • example.h
        int fact(int n);
        

      • setup.py
        #!/usr/bin/env python
        
        """
        setup.py file for SWIG example
        """
        
        from distutils.core import setup, Extension
        
        
        example_module = Extension('_example',
                                   sources=['example_wrap.c', 'example.c'],
                                   )
        
        setup (name = 'example',
               version = '0.1',
               author      = "SWIG Docs",
               description = """Simple swig example from docs""",
               ext_modules = [example_module],
               py_modules = ["example"],
               )
        

    3. 新しく端末を開く

    4. プログラムファイルから、Python で実行可能にするためのファイルを作る

      端末で次のように操作

      source /usr/local/bin/virtualenvwrapper.sh
      workon py36
      swig -python example.i
      sudo python3 setup.py build_ext --inplace
      ls -la example.* build 
      

    5. python 処理系を起動し、次のプログラムを試してみる
      import example
      example.fact(4)
      exit()