この状態でUPDATINGの手順通りにやると、先のアップデートでアップデートしてしまったためにxorg ports製作者が想定したものがアップデートされず、さらにどつぼにはまっていきます。xorg 7.2になったことでxloadなどこれまでxorg-clientとして導入されていたportsが各々のportsに分割されて大量に入ったようです。しかし、自分の手順でやるとこれらのportsがインストールされません。これにより、xkbcompなどX起動時に実行されるプログラムが実行できず、フォントもないためXが起動しなくなります。T_T このときに出るエラーは『Could not open default font 'fixed'』や『kdbcomp not found』です。
自分のやった対処方法はxorg関連のportsをすべてpkg_delete -fで削除し、再インストールした後にpkgdb -Fでデータベースを作りなおすというものでした。 % pkg_delete -f xorg-\* % cd /usr/ports/x11/xorg && make install この手順を行ってもフォントなどpkgdb -Fの時に足りないものがあるといわれるのでいわれるが儘にインストールし続けます。ここまでやるとxorgcfgが起動できるようになるのでここで設定して/etc/X11/xorg.confを自動生成してもらいます。nvidiaのカードを使っている人はこのあとにnvidia-xconfigを実行するとXが起動できる状態までこぎつけます。
このあと、acroreadが実行できなくなるという問題がありました。この問題は sh /usr/ports/Tools/scripts/mergebase.shに失敗しているために/usr/X11R6から/usr/localへのリンクが作られていなかったことが原因のようでした。そこで、/usr/X11R6にあるファイルが昔のX11R6にあったファイルの残骸であることを確認してバックアップをとった上で、/usr/X11R6を削除し、/usr/localへのリンクにしました。こうすることで、acroreadも実行できるようになりました。
これはさすがに (スコア:1, 参考になる)
FreeBSDにとってはビッグイベントかもしれないが、X11R7.2リリース [srad.jp]すらセクションローカルな記事じゃなかったっけ?なんだかねぇ。
ま、いいんだけど。いいなら言うな。
# 私の感覚と編集者の感覚のズレが結構大きいみたいなのでAC
xorgとお別れするレベルの致命的さですね (スコア:5, 参考になる)
...と書いている小生はXが使えなくなりました。しくしく。T_T
参考までにどの手順でXが使えなくなり、どうやって復帰したか書いておきます。
復帰してるのかな...(--;
xorg 7.2が入った後に次のコマンドを打ち込むとフォントが表示できないプログラムが生まれます。
% portsnap fetch update && portupgrade -a
XORG_UPGRADE環境が設定されていなくてもアップグレードするところはしてしまうので、これで6.9と7.2を想定した環境が混在した中途半端な状態ができあがります。これをやってしまうと、Firefoxのようなgtk2を使っているプログラムがフォントを表示できなくなり、日本語文字の代わりに[16進数]の羅列が出るようになります。
この状態でUPDATINGの手順通りにやると、先のアップデートでアップデートしてしまったためにxorg ports製作者が想定したものがアップデートされず、さらにどつぼにはまっていきます。xorg 7.2になったことでxloadなどこれまでxorg-clientとして導入されていたportsが各々のportsに分割されて大量に入ったようです。しかし、自分の手順でやるとこれらのportsがインストールされません。これにより、xkbcompなどX起動時に実行されるプログラムが実行できず、フォントもないためXが起動しなくなります。T_T
このときに出るエラーは『Could not open default font 'fixed'』や『kdbcomp not found』です。
自分のやった対処方法はxorg関連のportsをすべてpkg_delete -fで削除し、再インストールした後にpkgdb -Fでデータベースを作りなおすというものでした。
% pkg_delete -f xorg-\*
% cd /usr/ports/x11/xorg && make install
この手順を行ってもフォントなどpkgdb -Fの時に足りないものがあるといわれるのでいわれるが儘にインストールし続けます。ここまでやるとxorgcfgが起動できるようになるのでここで設定して/etc/X11/xorg.confを自動生成してもらいます。nvidiaのカードを使っている人はこのあとにnvidia-xconfigを実行するとXが起動できる状態までこぎつけます。
...と、現在nvidia-settingsと格闘中です(--;;
(nvidia-settings:27430): Gtk-CRITICAL **: gtk_text_buffer_emit_insert: assertion `g_utf8_validate (text, len, NULL)' failedが出て保存先はに空っぽのファイルになります。
FreeBSD user諸氏も自分の二の舞になりませんよう...
追記: nvidia-settingsとacroreadについて (スコア:5, 参考になる)
このあと、acroreadが実行できなくなるという問題がありました。この問題は sh /usr/ports/Tools/scripts/mergebase.shに失敗しているために/usr/X11R6から/usr/localへのリンクが作られていなかったことが原因のようでした。そこで、/usr/X11R6にあるファイルが昔のX11R6にあったファイルの残骸であることを確認してバックアップをとった上で、/usr/X11R6を削除し、/usr/localへのリンクにしました。こうすることで、acroreadも実行できるようになりました。
Re:これはさすがに (スコア:2, 興味深い)
実際、こういった実例がでてくればそれに(マズいけど)依存したようなソフトとかも出てくるし、そうしたらだんだんとLinuxとかでも移行が始まるだろうし。
# なので多少なりとも重要なのでは...とか考えましたが。
M-FalconSky (暑いか寒い)
Re:これはさすがに (スコア:1, 興味深い)
Makefile作るときにオプションで指定するようになるだけでしょう。
Re:これはさすがに (スコア:0)
もちろん、アップグレードは(手順を守れば)うまく行くようになっています(いるはず)。
ちなみに。Debianでは公式パッケージはOSの一部、/usr/localはパッケージ管理システムの管轄外となっています。
Re:これはさすがに (スコア:1)
2007Q1 以降、ある程度出揃った modular X では、/usr/pkg 以下に直に入ってますね。
というか、元々、Solaris は /usr/openwin だし、IRIX や OSF1 や HP-UX は /usr に入ってます。
その上で X 関係の pakcage も /usr/pkg の下に入れてて、
DragonFly + modular X なんかで pkgsrc 全体を bulk build も以前から繰り返しされてますので、
prefix 固定のソフトの問題は、かなり発見されて解決されているものと思われます。
pkgsrc は NetBSD 以外にも、Linux, Solaris, FreeBSD, OpenBSD, DragonFly, HP-UX などの上でも試せますから、どんどんテストしてください。
Re:これはさすがに (スコア:1)
pkgsrcって、なんだか知らないけどテキトーにupgradeすると、perlとかねこそぎupgradeしようとして一旦全部uninstallした上でclean buildしようとしやがるでしょ。途中で止まると途方に暮れるんだけど、これってpkgsrc geek的にはどう対処するのが正解なの?
Re:これはさすがに (スコア:3, 参考になる)
Re:これはさすがに (スコア:1, すばらしい洞察)
Re:これはさすがに (スコア:1)
自分で直せなんて!って人は stable ブランチを使うということで。
まあ、make replace で置き換えるとか、DEPENDS_TARGET や UPDATE_TARGET に云々して、バイナリパッケージを使い回す方法もありますが、私の場合、build したときの組み合わせと違うバージョンの組み合わせで使ったときに、微妙に動作が怪しいパッケージが以前あったので、それ以来、全部 build し直してます。
大幅に入れ替えるときには、pkg_comp 環境の pkg_chk でソースベースでバイナリパッケージを作り直して、実環境の pkg_chk でバイナリベースでアップデート。
Re:これはさすがに (スコア:0)
#ACにしとく
Re:これはさすがに (スコア:0)
BSD厨房はいつになったら (スコア:0)
Re:BSD厨房はいつになったら (スコア:0)
(あるいはゆっくりと流れているので)永遠に気づきません。
Re:これはさすがに (スコア:0)