32bit chroot 環境下で絶賛コンパイル中

コンパイル放置して。


朝起きて。


画面を見たらコンパイルが見事にコケていた。 \(^o^)/



コケたのは media-libs/fontconfig 。その他少しやってみたところ freetype とか truetype 周りで同じくコケてしまうパッケージがある。ログを調べてみたら直接の原因は file not found とかいう感じで、どうも SYSROOT を見て相対的にファイルを参照しにいっているからのようだ。

てことで

# ebuild /usr/portage/media-libs/fontconfig/fontconfig-2.8.0.ebuild clean
# SYSROOT="/" ebuild /usr/portage/media-libs/fontconfig/fontconfig-2.8.0.ebuild compile


とやってみたら通った。あとは

# SYSROOT="/" emerge --resume


なんて感じで継続。あとで環境変数 SYSROOT を .bashrc に書いておこうかな。


パッケージの数量的には 8 割方終わっているんだが、あとは X 上で動く大物ばかり。まだしばらく時間がかかりそう。

ちなみに

レジュームする前の emerge コマンドは world ファイルの中身を全部手打ち (というかコピペ) したもの。こんな感じw

# emerge app-admin/sudo \
app-admin/syslog-ng \
app-admin/sysstat \
app-arch/rar \
app-arch/unrar \
app-benchmarks/bonnie++ \
・
・
・
x11-themes/gentoo-artwork-livecd \
x11-themes/gentoo-xcursors \
xfce-base/xfce4-meta


多分 shell をうまく使えば出来る*1んだろうけど、めんどくさかったので。

/var/lib/portage/world の行末改行部分に \ をつける編集してあげて、それをペーストしただけ。 emaint --fix world なんてコマンドをつかうとリスト登録されてるのをマージするように修正してくれるかなとか思っていたけど、リストから削除して修正してしまうだけで、やってはくれない。

*1:実はとってもカンタンで。 # cat /var/lib/portage/world | xargs emerge とするだけで出来ましたww