久々に新しくec2に私用でインスタンスたてたのでこれまでずっとAmazon Linux使ってたけどCentOS7にしてみた。ついでに先日リリースされたPython3.6.0をインストールしてみました。
cd /usr/local/src/ sudo wget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz sudo tar zxfv Python-3.6.0.tgz sudo chown -R centos. Python-3.6.0 cd Python-3.6.0 ./configure --enable-shared --enable-optimizations sudo make sudo make install
「chownはなんのため?」と思われるでしょうが、tarボールを解凍したらパーミッションが501.gamesになっていて触れなかったのでcentosユーザーに変えました。なんでこうなったのかは知らんのですが、同じホストでPython3.5.2のソースコードをDLして試したらパーミッションはcentos.centosだったので、tarした環境の問題なんじゃないかと。
makeとmake installで30分以上待ちました。テストですごい時間かかってた。t2.microだったからなんだろうけど、3.5のころはここまで時間かかんなかった気がするんだよなぁ。
で、このまま起動しようとするとライブラリがみえないっていって怒られるので
sudo vi /etc/ld.so.conf 「/usr/local/lib」を追記 sudo /sbin/ldconfig
$ /usr/local/bin/python3 Python 3.6.0 (default, Dec 31 2016, 00:18:38) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux Type "help", "copyright", "credits" or "license" for more information.
無事起動しました。
デフォルトのpythonを置き換えることはしなくて、併存です。どうせvenv使うんだし、それで十分です。最近はpyenv使う人が多いのかもしれないけど、標準でインストールされるvenvで十分なのであれこれインストールしたりはしません。
最近GCPが話題になっていて、AWSよりずっと安いっていう話も聞くんですけど、別にAWSにそんなに不満もないのでまだしばらくはAWS使おうかなと。