2011年8月23日火曜日

Mathematicaをssh越しに使うにはlocalhostにfontのinstallが必要だ。

Mathematica(http://www.wolfram.com/index.ja.html) を sshでXをとばじて使うには、 localhostにmathematica用のfontを用意する必要がある。

概要はhandbook(http://www.freebsd.org/doc/ja/books/handbook/linuxemu-mathematica.html)に書いてあるが、下の様に適当にやっても動く。なおマシン構成は、
server : FreeBSD 8.2, Xorg 7.5, Mathematica 4(古い!でも不定積分はできる)
localhost : FreeBSD 8.2, Xorg 7.5

1. fontをserverからコピーする
server のどこに fontがあるかを調べるには、server:/etc/X11/xorg.confを見る。
Section "files"のFontPathにそれらしい記述があるので、例

----ここから server:/etc/X11/xorg.conf ----
Section "ServerLayout"
        Identifier      "秘密"
        Screen      0   "秘密"
        InputDevice     "Mouse0" "CorePointer"
        InputDevice     "hhk" "CoreKeyboard"
EndSection

Section "Files"
        RgbPath      "/usr/X11R6/lib/X11/rgb"
        ModulePath   "/usr/X11R6/lib/modules"
        ModulePath   "/usr/local/lib/xorg/modules"
        FontPath     "/usr/local/mathematica4/SystemFiles/Fonts/X/"  <-
        FontPath     "/usr/local/lib/X11/fonts/misc/"
        FontPath     "/usr/local/lib/X11/fonts/TTF/"
        FontPath     "/usr/local/lib/X11/fonts/OTF"
        FontPath     "/usr/local/lib/X11/fonts/Type1/"
        FontPath     "/usr/local/lib/X11/fonts/100dpi/"
...(続く)
----- ここまで server:/etc/X11/xorg.conf ----

localhostに同じdirectryを作って、中身をすべてコピーするよろし。 上の例だと
# mkdir  -p /usr/local/mathematica4/SystemFiles/Fonts/X/
# rsync -azv username@server:/usr/local/mathematica4/SystemFiles/Fonts/X/ /usr/local/mathematica4/SystemFiles/Fonts/X/

2. xorg.confの設定
それから、/etc/X11/xorg.conf にもFontPathの行を加えて、Xを立ち上げ直せばよろし。ただし、FontPathのなかで、一番先頭にmathematica用のfontを指定しないと、fontを見つけられないので注意。(serverのxorg.confと同じ位置に書き加えればよろし)。