Aug 162008
 

自分でもときどき混乱するのでブックマーク代わりにメモ。

AlphaのCPUモデルに関する記述はWikipedia(英語サイトのほう)が詳しい。
DEC Alpha – Wikipedia, the free encyclopedia

Alphaのシステムタイプ情報はDebian/Alphaから。
Debian — Alpha 移植版 — システムの機種 Types
Debian/Alphaのサイトには他にも有益なリンク集がある。
Debian — Alpha 移植版 — リンク

Jun 082008
 

emerge時にファイルがダウンロードできなくなった。
ファイルシステムの空き領域を誤認しているのだろうか。

# emerge -v system

<<< Emerging (1 of 39) sys-apps/kbd-1.14.1-r1 to /
!!! Insufficient space to store kbd-1.14.1.tar.gz in /usr/portage/distfiles
!!! Couldn't download 'kbd-1.14.1.tar.gz'. Aborting.
 * Fetch failed for 'sys-apps/kbd-1.14.1-r1'

“Insufficient space to store”で検索しても”on a network share”という例は見つけれられるものの、こっちはローカルファイルシステムだし。

portage本体が悪いのか、pythonが悪いのか、とそれぞれアップグレードしてみるが効果なし。
必要なファイルをwgetでダウンロードしながらアップグレードしていくには数が多すぎて面倒だ。

結局、領域が空いてるのはわかっているので、チェック時のコードをちょっと変更して逃げてしまった。

# diff -u /usr/lib/portage/pym/portage.py.orig /usr/lib/portage/pym/portage.py
--- /usr/lib/portage/pym/portage.py.orig        2008-06-08 15:46:48.000000000 +0900
+++ /usr/lib/portage/pym/portage.py     2008-06-09 23:03:29.000000000 +0900
@@ -3456,7 +3456,7 @@
                                        and (mydigests[myfile]["size"] - mysize + vfs_stat.f_bsize) >= \
                                        (vfs_stat.f_bsize * vfs_stat.f_bavail):
                                        writemsg("!!! Insufficient space to store %s in %s\n" % (myfile, mysettings["DISTDIR"]), noiselevel=-1)
-                                       has_space = False
+                                       has_space = True

                        if distdir_writable and use_locks:
                                waiting_msg = None
Jun 162007
 

ここしばらく、Gentoo Linuxのgccコンパイルに失敗しています。

/var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/gcc/unwind-dw2-fde-glibc.c: In function '_Unwind_IteratePhdrCallback':
/var/tmp/portage/sys-devel/gcc-4.1.2/work/gcc-4.1.2/gcc/unwind-dw2-fde-glibc.c:128: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See  for instructions.
Preprocessed source stored into /var/tmp/portage/sys-devel/gcc-4.1.2/temp/ccuY4aAI.out file, please attach this to your bugreport.
make[3]: *** [libgcc/./unwind-dw2-fde-glibc.o] Error 1
make[3]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc'
make[2]: *** [libgcc.a] Error 2
make[2]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc'
make[1]: *** [stage1_build] Error 2
make[1]: Leaving directory `/var/tmp/portage/sys-devel/gcc-4.1.2/work/build/gcc'
make: *** [bootstrap-lean] Error 2

!!! ERROR: sys-devel/gcc-4.1.2 failed.
Call stack:
  ebuild.sh, line 1615:   Called dyn_compile
  ebuild.sh, line 972:   Called qa_call 'src_compile'
  ebuild.sh, line 44:   Called src_compile
  ebuild.sh, line 1305:   Called toolchain_src_compile
  toolchain.eclass, line 26:   Called gcc_src_compile
  toolchain.eclass, line 1541:   Called gcc_do_make
  toolchain.eclass, line 1415:   Called die

!!! emake failed with bootstrap-lean
!!! If you need support, post the topmost build error, and the call stack if relevant.
!!! A complete build log is located at '/var/log/portage/sys-devel:gcc-4.1.2:20070616-124747.log'.

軽くGoogleさんに聞いたら、MIPS環境でPostgreSQLがコンパイルできないのような情報を見かけたりもするのですが、gcc-3.4系の問題だったりするんでしょうか 😕
gcc-configで確認すると、3.3系が残っているのでそちらに切り替えて再実行してみましたが、状況は変わりません。

# gcc-config -l
 [1] alphaev6-unknown-linux-gnu-3.3.2
 [2] alphaev6-unknown-linux-gnu-3.4.6 *
 [3] alphaev6-unknown-linux-gnu-3.4.6-hardenednopiessp
# gcc-config 1
 * Switching native-compiler to alphaev6-unknown-linux-gnu-3.3.2 ...
>>> Regenerating /etc/ld.so.cache...                                                                                                                                                                                            [ ok ]

 * If you intend to use the gcc from the new profile in an already
 * running shell, please remember to do:

 *   # source /etc/profile

# source /etc/profile
# emerge gcc
:

エラーになる箇所はまったく同じでした。やはりgcc-4.1.2側の問題なのですかね 😕

May 072007
 

xfsを使うと画面真っ黒な状態になる、というところまではわかりました。
xfs自体の問題なのか、それとも私の環境独自のところに原因があるのか、まったく切り分けできてませんが。
とりあえず/etc/X11/xorg.confにFontPath全部羅列してXサーバが起動することろまでは確認。
startxでtwmが立ち上がってくることも確認できたものの、gnome-sessionやgdmは起動しません。
はぁ…。

May 052007
 

久々にAlphaマシンのGentooのアップデートをしてみたら、Xサーバが起動しなくなってしまいました 🙁
エラーで落ちるというわけでもなく、画面が真っ暗になってしまいます。でもってXのプロセスはCPUフルに使いまくり。
straceでアタッチしても何も出てこないので、内部でぐるぐるループしてるような感じ。
VGAならかろうじて動きますがXGA(1024×768)だともうだめです。Modelineの設定いじれば何とかなるんでしょうか。

このマシン、最初はNetBSD入れていたけどtga以外ではXサーバが使えないのでGentooで使っていたのですが…。
NetBSD/alpha Frequently Asked Questions – What video cards are supported by X11?

うぅん。Xが動かないならNetBSDに戻そうかなぁ。

そういえば、Fedora Coreを移植したAlpha Coreってものあるみたいですね。
最新はFedora Core 5ベースのAlpha Core 3がリリースされたようですし試してみようかな。でもなんで番号あわせないんだろう 😕

May 162006
 

スラッシュドットのタレコミにびっくりしました。「FreeBSD/alphaは6.x限り」だとか。

まぁ、FreeBSDはx86系統が主力だと思ってましたので、自分がAlphaで動かすならやはりNetBSDやGentoo Linuxという選択にはなるものの、目の当たりにするとやはり残念なものですね。

消え去る前に一度インストールしてみましょうかね。

Apr 232006
 

ふと/usr/portage/profilesを眺めていたら、alpha用のプロファイルディレクトリに2006.0があったので、アップグレードしてみることに。
アップグレード方法はGentoo Upgrading Guide(日本語)に記載されています。
ただ、こちらには2006.0はサポートプロファイルには含まれていないので、まだ使ってはいけないプロファイルなのかも知れません。

プロファイル変更

# rm /etc/make.profile
# ln -s /usr/portage/profiles/default-linux/alpha/2006.0 /etc/make.profile

アップグレード実行

# emerge --update --newuse --deep world

依存関係修復

# revdep-rebuild

何回かemergeで足踏みするでしょうが、これで2006.0にアップグレードできるはずです。

Apr 112006
 

Gentooマシンの~alpha化がやっと完了し、Xも無事復活。
emerge途中で何度もエラーで止まり、emergeが終わっても依存関係が壊れていてgdmが起動しないような状態でしたが。

  • ライブラリの依存関係が壊れてしまったものはrevdep-rebuildで回復
  • フォントサーバ(xfs)がalphaでは動作しないようになっていたのでxorg.confのFontPathを設定しなおし
  • fixedフォントがない、とXサーバが落ちるので、fonts.aliasをでっちあげ

で、何とかこのPostをGentooマシンから書き込める状態にできました 😀

Apr 062006
 

Gentoo ~alpha化 (1) ~ 再びに引き続きemergeを実施しようと思ったら、ブート後sshできなくなってました。コンソールログインもNGです。

sshが起動しなかった原因は/etc/init.d/net.loの更新漏れ。
このためloインターフェースがupせず、それに引きずられてネットワークサービスも全滅していたのでした。

回復ですが、まずは/etc/aboot.confにはシングルユーザモードの記述を用意してましたので、SRMプロンプトから-flags 1指定でブート実行。

# cat /etc/aboot.conf
0:kernel-genkernel-alpha-2.6.15.1 ro root=/dev/sda4
1:kernel-genkernel-alpha-2.6.15.1 ro root=/dev/sda4 single
>>>> boot dka0 -fl 1

その後/etc/init.dと/etc/conf.d配下を新しいものに置き換え、とりあえずsshは回復。
/etc/pam.d/loginを新しいものに置き換えたらコンソールログインも回復。
ただsaslライブラリやldapライブラリの依存関係がことごとく崩れていて、eximやnamedは起動しません。

この状態で更新が必要なパッケージ数は約170…
まだまだ道のりは遠いですが、明日の朝までにどこまで進めるでしょう 😕

2006-04-07追記
朝の時点でcdparanoiaのビルドでこけてました。残パッケージは110ちょい。夜間だけだと週末一杯かかるかな。

Apr 022006
 

Gentoo X復活に向けてのとおり、xorg-x11を7.0にしようと思いましたが、ACCEPT_KEYWORDS=~alphaが必要です(今はalphaで使ってます)。
xorg-x11だけを~alphaにしようと思っても、依存関係から多数のパッケージが~alpha化を迫られますので、もう全体を~alpha化することにしました。
実は以前も「ACCEPT_KEYWORDS=~alphaにしてみる」で~alpha化してたのですが、いつの間にか戻してたようです。
早速開始すると、pam-loginとxorg-x11が他パッケージをブロックしているので、

# emerge --unmerge pam-login xorg-x11

してから

# emerge -v --deep --newuse world

開始。
今度は「perlモジュールのXML::Parserがない」と中断しましたが、XML-Parserパッケージはちゃんと入ってます 😕
これは古いバージョンのperlモジュールパスが@INCから外れてしまったのかなと思ったので、新しいディレクトリ(/usr/lib/perl5/vender_perl/5.8.8)にインストールされるようXML-Parserをアップデートしてemerge再開。朝までやって残り300パッケージ超。

日中Alphaでビルドし続けるとサウナになりますので、一旦終了させました 😛