Ubuntu 14.04 LTS にソースコードからPythonをインストールする
前回と同様にvagrantでUbuntu 14.04 LTS (ubuntu/trusty64) の仮想マシンを立ち上げてまっさらな状態からPythonをソースコードからインストールします。
1
| |
1 2 3 4 5 | |
apt-get updateだけしてビルド
特にパッケージを追加インストールしないでそのままビルドすると、こんな感じのモジュールがビルドされない。
1 2 3 4 | |
pyenvのwikiを参考にしてビルド
pyenvの
https://github.com/yyuu/pyenv/wiki/Common-build-problems
で紹介されてる依存パッケージをインストールしてビルドしてみるとこんな感じ。
1
| |
1 2 | |
パーフェクトPythonを参考にしてビルド
パーフェクトPythonで紹介されていたパッケージをインストールしてビルドしてみるとこんな感じ。
1
| |
1
| |
上記+α
さらにliblzma-dev libncurses5-devを追加してビルドしてみるとひとまず全てのモジュールはビルドされている様子。
1
| |
Python Developer’s Guideを参考に
Python Developer’s Guide https://docs.python.org/devguide/setup.html#compiling-for-debugging で紹介されているビルド方法はこんな感じ。
1
| |
上記コマンドを実行すると一通りすべてのモジュールがビルドされた状態から追加でインストールされるパッケージは以下のようになってた。この中に気になるのがあればこちらのほうがやはりいいのかも。
1 2 3 4 5 6 7 | |
ただpython3.4っていうパッケージがない場合は、バージョン下げたりしてパッケージ探してね、とあるのでスクリプト化を考えると若干使いづらいかも。
If that package is not available for your system, try reducing the minor version until you find a package that is available.
まとめ
依存パッケージをインストール
おそらく最小限なパッケージをインストールするか
1
| |
build-depを利用して依存パッケージをインストールする
1
| |
ソースコードをダウンロードしてビルド
1 2 3 4 5 6 | |
Pyenvでpipがインストールされた仮想環境を作りたかった
普段使いのMacではとりあえずでpyenvを導入していて、
Pythonの仮想環境の構築の仕方についてあやふやだったので
確認がてら新しく環境を作ってみた。
vagrantでUbuntu 14.04 LTSの仮想マシンを作成して実施。
Pythonバージョン別の仮想環境の構築方法とpipのインストール有無は以下の感じ。
3.3からvenvが導入されたのと3.4からensurepipが導入されて
pipがインストールされるようになってるはず。
| Python | tool | pip |
|---|---|---|
| 2.7 | virtualenv | 入ってる |
| 3.3 | pyvenv | 入ってない |
| 3.4 | pyvenv | 入ってる |
Ubuntu 14.04 LTS に付属しているPython3.4.0を使ってみる
3.4からは標準で仮想環境も作れるしpipも最初からインストールされてるしで便利なんだろうなーっと…
1 2 | |
うーん? ensurepipのscript実行でエラーの模様。
1 2 | |
そんなモジュールないよとのこと。どうやらpython3パッケージ3.4.0-0ubuntu2にはensurepipが入ってないようで。
1
| |
pipなしなら仮想環境作れるけどせっかくならpipは最初から入って欲しい。
ソースコードからビルドしてみる
公式パッケージリポジトリには2系と3系の二つしか入手できないので ソースコードからビルドしてみる。せっかくなので現時点の最新で。
1 2 3 4 5 6 7 | |
システムとは別の場所にインストールしておいて、仮想環境作成すると
1
| |
うまくいったような感じがするけど
1 2 3 4 | |
pipなんてないって言われちゃってますよと。
足りてないパッケージをインストールする
makeのログを見てみると最後のほうでなんか言われてますね
1 2 3 4 5 6 7 8 9 | |
それっぽいパッケージをインストールして
1
| |
再度makeして再インストール
1 2 3 4 5 | |
ログにはpipがインストールされた旨のメッセージが表示された。
1 2 3 4 | |
実際に仮想環境作ってみるとpipとsetuptoolsがインストールされていた
1 2 3 4 5 6 | |
とりあえず目的は達成したのでよしとする。 依存パッケージのインストールってこれで合ってるのか不安。
MongoDBいれてみた
Install
http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/
- MongoDB 2.6.4
- Ubuntu 14.04
1 2 3 4 | |
リモートからの接続を許可
/etc/mongodb.confのbind_ipをuncomment
1
| |
restart
1
| |
もう一度やってみた結果
特になにも困ることなく普通にできました…
http://octopress.org/docs/setup/
詰まってたときに気になった点としては何かgemが足りてないのかなと
改めてbundle installした際にいくつかのgemがインストールされてたので
octopressのhtmlを生成するための実行ファイルが中途半端に生成でもされたとしたら
納得できる結果かなあとは思うものの、とりあえずできたのでいいやっと。
- topページに記事が表示されない
bundle installしたらいくつかgemがインストールされた- 再度
rake generateして見ても同様に記事が表示されない ~/octopress2に改めてセットアップ- 適当に記事書いて
rake generateしたらtopに表示された
まあrubyやりたくなったときに勉強しよう…
Test
generating test is now.
title
- a
- b
- c
hoge foo bar