Pythonの仮想環境を作って静的サイトジェネレータPelicanをインストールした。
開発環境
- Linux Mint 17.3 MATE 32bit
- pyenv
前回まで
インストール工程
$ bash -l $ python -V Python 3.6.1 $ python -m venv pelican_install/ $ source pelican_install/bin/activate (pelican_install) $ pip -V pip 9.0.1 from /media/mint/85f78c06-a96e-4020-ac36-9419b7e456db/mint/root/pj/venv/3_6_1/pelican_install/lib/python3.6/site-packages (python 3.6) (pelican_install) $ sudo pip install pelican [sudo] password for mint: sudo: pip: command not found (pelican_install) $ pip install pelican Collecting pelican Downloading pelican-3.7.1-py2.py3-none-any.whl (134kB) 100% |████████████████████████████████| 143kB 1.1MB/s Collecting six>=1.4 (from pelican) Downloading six-1.10.0-py2.py3-none-any.whl Collecting pygments (from pelican) Downloading Pygments-2.2.0-py2.py3-none-any.whl (841kB) 100% |████████████████████████████████| 849kB 360kB/s Collecting blinker (from pelican) Downloading blinker-1.4.tar.gz (111kB) 100% |████████████████████████████████| 112kB 1.1MB/s Collecting unidecode (from pelican) Downloading Unidecode-0.04.20-py2.py3-none-any.whl (228kB) 100% |████████████████████████████████| 235kB 865kB/s Collecting jinja2>=2.7 (from pelican) Downloading Jinja2-2.9.6-py2.py3-none-any.whl (340kB) 100% |████████████████████████████████| 348kB 1.1MB/s Collecting python-dateutil (from pelican) Downloading python_dateutil-2.6.0-py2.py3-none-any.whl (194kB) 100% |████████████████████████████████| 194kB 928kB/s Collecting feedgenerator>=1.9 (from pelican) Downloading feedgenerator-1.9.tar.gz (4.1MB) 100% |████████████████████████████████| 4.1MB 81kB/s Collecting pytz>=0a (from pelican) Downloading pytz-2017.2-py2.py3-none-any.whl (484kB) 100% |████████████████████████████████| 491kB 468kB/s Collecting docutils (from pelican) Downloading docutils-0.13.1-py3-none-any.whl (536kB) 100% |████████████████████████████████| 542kB 461kB/s Collecting MarkupSafe>=0.23 (from jinja2>=2.7->pelican) Downloading MarkupSafe-1.0.tar.gz Installing collected packages: six, pygments, blinker, unidecode, MarkupSafe, jinja2, python-dateutil, pytz, feedgenerator, docutils, pelican Running setup.py install for blinker ... done Running setup.py install for MarkupSafe ... done Running setup.py install for feedgenerator ... done Successfully installed MarkupSafe-1.0 blinker-1.4 docutils-0.13.1 feedgenerator-1.9 jinja2-2.9.6 pelican-3.7.1 pygments-2.2.0 python-dateutil-2.6.0 pytz-2017.2 six-1.10.0 unidecode-0.4.20
所感
環境構築があまりに複雑すぎて辛い。構築後の使い分けも。
python
/python3
、pip
/pip3
、pyenv
/pyvenv
/venv
、sudo
有無。何がなんだか。もう把握できていない。しかもこれPythonだけの話。実際はもっと複雑。Rubyでも似たような状況。プログラミング言語ごとに異なる環境構築とその方法がある。さらにOSレベルのパッケージマネージャまである。OSにはLinux/Windows/Macがあり、Linuxだけでも多数のディストロがある。ディストロごとにパッケージマネージャが違う。OSにはバージョンがあり、それによってパッケージやライブラリの使えるバージョンが違ったりする。もう何がどうなっているのかさっぱり。