emerge のときの python のエラー対処とりあえず

VirtualBox 上の Gentoo ゲスト上でマージしまくっていたときにいくつか引っかかったのでメモ。

コンパイル等々の中で python を呼んでいるものの中には最新の 3 系じゃ通らないものがたまーにある。たとえば compiz-fusion の設定メニューアプリである x11-apps/ccsm ではこんな感じ。

python3.1 setup.py build --prefix=/usr
  File "setup.py", line 66
    print "Uninstalling %s" % file
                          ^
SyntaxError: invalid syntax


その手のエラーは大体 python3.1 ナンチャラかんちゃらなので、そういう場合に試すといい方法。通常使うように設定されている python のバージョンを eselect を使って 2.6 系にしてみるだけ。

$ eselect python list               ←入っているpythonをリスト表示
Available Python interpreters:
  [1]   python2.6                   ←1が2.6系統
  [2]   python3.1 *                 ←2が3.1系統…*が付いているので通常こっち

$ sudo eselect python set 1         ←通常1(2.6系統)を使うようにセット
 or
$ sudo eselect python set python2.6

$ eselect python list
Available Python interpreters:
  [1]   python2.6 *                 ←こちらに*が付いている
  [2]   python3.1

list でインストールされている python のリストを表示、 set で使うバージョンをセット。この場合は 1 が 2.6 系統で 2 が 3.1 系統ってこと。1 とか分かりづらかったら python2.6 とバージョン付きで指定してやってもいい。

ここまでやったら、後はいつもどおりマージしてみたら通ることが多い。