概要
FreeBSD/i386 8.4 にて ports を teTeX がある最後のもの (2014.6) に更新しました. その記録を提示致します.
概要
FreeBSD/i386 8.4 にて ports を teTeX がある最後のもの (2014.6) に更新しました. その記録を提示致します.
ports に teTeX がある環境 (この頁では「旧環境」と称する) の,なるべく新しいものを残しておきたいので,ports を 2014.6.15 付のものに更新しました. (7 月以降の ports では texlive のみになります.)
その際,TeX には関係ないところでなのですが,いろいろとトラブルに逢いました. 以下にそれらについて述べます.
ports/devel/dbus が以下のようになって make できません.
/usr/local/bin/xmlto man dbus-cleanup-sockets.1.xml I/O error : Attempt to load network entity http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl warning: failed to load external entity "http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl" compilation error: file /tmp/xmlto-xsl.2egITi line 4 element import xsl:import : unable to load http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl
調べてみると,docbook に関連する ports を導入する順番により,この問題が生じたり生じなかったりするらしいです. 以下のようにしたら dbus が make できるようになりました.
# cd /usr/ports/textproc/docbook-to-man
# make install 既に導入されているならば,deinstall, reinstall する.
# cd /usr/ports/textproc/docbook
# make deinstall
# make reinstall
# cd /usr/ports/textproc/docbook-xsl
# make deinstall
# make reinstall
この ports においては,firefox は version 30.0 です. gcc 4.7 で make することができました.
起動直後に以下のようなメッセージが必ず出ますが,動作には影響ありません.
(process:1256): GLib-CRITICAL **: g_slice_set_config: assertion `sys_page_size == 0' failed
なお,firefox に関連する ports はすべて gcc で make することができ,clang は必要ありませんでした.
ちなみに,FreeBSD/amd64 8.4 においては,gcc 4.7, 4.8, 4.10 で make することができませんでした.
# make MAKE_JOBS_UNSAKE=yes
も効かず,同じ gcc に対しては同じエラーで止まりました.
(参考までに,firefox-esr-24.1.0,1 は gcc 4.8 にて MAKE_JOBS_UNSAKE=yes なしで make することができました.)
これが理由で「旧環境」として FreeBSD/amd64 ではなく FreeBSD/i386 を選びました.
ports/dns/libidn は ghostscript9 等に関連して導入されます. make すると以下のようにエラーになります. (引用した一部の行が尻切れです.)
===> Building package for libidn-1.28_1 Creating package /usr/ports/dns/libidn/work/pkg/libidn-1.28_1.tbz Registering depends: gettext-0.18.3.1_1 libiconv-1.14_3. Creating bzip'd tar ball in '/usr/ports/dns/libidn/work/pkg/libidn-1.28_1.tbz' tar: share/emacs/site-lisp/idna.el: Cannot stat: そのようなファイルまたはディレ tar: share/emacs/site-lisp/punycode.el: Cannot stat: そのようなファイルまたは tar: Error exit delayed from previous errors. pkg_create: make_dist: tar command failed with code 256 *** Error code 1
次のようにして make install をやり直します.
# cd ports/dns/libidn # cp -p work/libidn-1.28/src/*.el work/stage/usr/local/share/emacs/site-lisp # make install
(注) このエラーは必ず生じるわけではありません. ports の導入の順序等にもよるのかもしれません.
gimp を導入する際に関連する graphics/gegl の導入が始まるのですが,以下のように途中で止まります.
===> Configuring for gegl-0.2.0_9 gegl-0.2.0_9: Needs graphics/graphviz with PANGOCAIRO support enabled.
この書き方だと,graphviz は導入されているけれども PANGOCAIRO が有効になっていないと解釈してしまいます. しかし,この点は問題ありませんでした. (PANGOCAIRO は default が「有効」です.)
一度 rehash すれば make を再開することができます.
# rehash # make
いつの間にか pcf font を導入する際に mkfontdir が実行されなくなってしまいました. その結果として fonts.alias が効かなくなりました. ~/.Xresources などでこの alias を用いて設定していると問題が生じます. 以下のように対処します.
# cd /usr/local/lib/X11/fonts/misc
# mkfontdir .
# cd /usr/local/lib/X11/fonts/100dpi
# mkfontdir .
# cd /usr/local/lib/X11/fonts/75dpi
# mkfontdir .
# xset fp rehash または X Server を再起動する.
あるいは,設定の方を alias を使わない書式に書き直した方が合理的かもしれません.
この件は旧環境に限定した話ではなく,新環境でも同じことです.
SpeedStepを使って省電力にするためには,/boot/loader.conf に以下のように記述します.
cpufreq_load="YES"
また,/etc/rc.conf に以下のように記述します.
powerd_enable="YES"
この設定を行なう前は,CPU の負荷によらず以下のような状態でした.
% sysctl dev.cpu | grep freq
dev.cpu.0.freq: 1802
dev.cpu.0.freq_levels: 1802/-1 1576/-1 1351/-1 1126/-1 901/-1 675/-1 450/-1 225/-1
設定後は,OS の起動直後 (低負荷の状態) にて以下のように CPU のクロック周波数が下がっています.
dev.cpu.0.freq: 225