FreeBSD Library Compatibilities2007年02月19日 13時04分17秒

Gnome の更新については何回か取り上げた。今回もこれに関してである。

20061014:
  AFFECTS: All GTK+2 and GNOME users
  AUTHOR: gnome@FreeBSD.org

  GNOME has been updated to 2.16. All GTK+2 and GNOME components have
  been moved from X11BASE (/usr/X11R6) to LOCALBASE (/usr/local). To
  upgrade your GNOME desktop or/and other applications you will need
  to use either sysutils/portupgrade or sysutils/portmaster. To use
  portmaster, make sure you have least 1.9 version to have the
  upgrade succeed.

 Portupgrade users:
  pkgdb -Ff
  portupgrade -rf pkg-config\*

 Portmaster users:
  portmaster -r pkg-config\*


この記述を見ると、一度に全ての Gnome 関連の物を更新しなければいけないように読めてしまう。しかし、FreeBSD ではライブラリの後方互換が正しく動くので、全てを一度に作り直さなくても大丈夫だ。

少なくても、portupgrade は共有ライブラリの .so を /usr/local/lib/compat/pkg/ に移す。ライブラリが入っていた ports 自体は消されても、共有オブジェクトは消されない。すなわち、更新する気が無ければ、更新しなくてもいいし、更新は再起動を挟まずに全てを一度で終わらせる必要もない。

実際に、stepupgrade で、7.0-CURRENT で時間をかけて、順次更新して来たが、何も問題は出なかった。一日では終わらないので、もちろん、途中で再起動も何回もやった。