2013年1月15日火曜日

一瞬あせる!LinuxでGPIBが使えなくなったか!? ScientificLinux 6.3でGPIB 続報

年があけて,久しぶりにLinuxでGPIBを試そうかと思ったら,lsmodしてもモジュールが出てこない!

# gpib_config

すると,

Failed to open device file '/dev/gpib0'
main: No such device or address

と表示される.
こうなれば手動でモジュールを読んでみようと思い,

# modprobe ni_usb_gpib

しかし,そんなモジュールないとか言われる.

焦る.

しかしほどなく状況を理解.
設定ファイルが間違えていないのにモジュールがないと言われる -> 現行カーネルのモジュールが無い -> カーネルバージョンが変わった?

案の定,カーネルがyumの自動更新でアップグレードされていました.

落ち着いて,ソースのディレクトリへ行き,

# ./configure
# make
# make install

設定ファイルはそのままだったので,無事にGPIBドライバが読み込まれました.
今後突然このようなことが起こると困るので,yumの設定からkernel関係はアップグレードしないようにする方がいいかもしれません.


2013年1月9日水曜日

Mountain Lion FinkのtexliveをTeXShopから使う

仕事上,texの環境を周りの方と合わせることは非常に大事.
我らが物理学教室の資産がsjisのtexである以上,それに合わせることが重要になってきます.

普段はTeXを日本語で使わないので気にならなかったのですが,TeXShopから日本語を扱おうとするといくつか問題がありました.

ネットで調べても『ビンゴそのまま!!』な方法がなかったのでメモしておきます.

まず,~/Library/TeXShop/bin/platex2pdf-sjisを見よう見まねで以下のように編集しました.


次に,TeXShopの設定パネルで,


とすれば動きました.

環境の復習です.

OS: 10.8.2
fink: 0.34.4
texlive: 0.20110705-103
TeXShop: 3.11



2013年1月7日月曜日

Mountain Lion にmusrfitをインストール2: 環境変数とlaunchd.conf編

rootのインストールは,

$ ./configure --gminimal --enable-asimage --enable-mathmore --enable-minuit2 --enable-xml 
$ make  
で無事完了.
環境変数を設定するために,.profileに

test -r /opt/root/bin/thisroot.sh && . /opt/root/bin/thisroot.sh

の一行を追加して再ログイン.

システムワイド環境変数の設定について調べていると,macではそもそもいろいろなデーモンを動かすのに起動時にlaunchdというものを使うらしい.
そこで,/etc/launchd.confの中に書いておくとたとえばダブルクリックで起動するようなアプリに対しても環境変数を渡すことができるらしい.

たとえば,musrfitをインストールする場合だったら,/etc/launchd.confの中身は,

setenv MUSRFITPATH /opt/root/bin
setenv QTDIR /sw/lib/qt4-x11
setenv ROOTSYS /opt/root

となります.
これは起動時に読み込まれるので, いったん再起動します.

musrfitを展開したディレクトリに移動し,

$ ./autogen.sh
$ ./configure --prefix=$ROOTSYS --with-qt4=$QTDIR
$ make
$ sudo make install

で無事にインストール完了.
musrfitのドキュメントによれば,/Applicationsディレクトリにmusredit.appもインストールされると書いてあったのですが,残念ながらそのようなことはなく,コマンドラインからの起動しかできませんでした.

$ cd ~/musrfit/doc/examples
$ musredit test-histo-MusrRoot.msr &

とすると,無事に起動.
これで夏休みにスイスにいく準備は万端!!
(予算は???)


2013年1月5日土曜日

Mountain lion にmusrfitをインストール1: root編


性懲りもなくmusrfitをmacにインストールしようと企んでいるのですが,道のりが長いのはよくわかっているので,ステップバイステップでゆっくりやってます.

まず,qt関係をそろえておくことは必須なのですが,qtwebkitがないとmakeでこけるのがわかっているので,finkでqtwebkitを入れようと思ったのですが,finkにはqt4が二種類あります.
qt4-base-mac-hogehogeとqt4-base-x11-hogehogeです.

私はなぜかqt4-base-x11-hogehogeシリーズを入れていましたので,それにならってqtwebkitもqtwebkit-x11をいれようとしたのですが,finkでインストールしようとするとなぜかqt4-base-mac-hogehogeも入れろと言ってくるのです.
かなり迷ったのですが,言われるがままインストールしてみました.
いまのところそれで不具合はないので,様子をみています.

それから,rootもfinkで入れるとパスの問題でいろいろ言われるのはわかっているので,ソースからビルドしようと思って,root_v5.34.03.source.tar.gzを/opt/root/ に展開し,

$ ./configure --gminimal --enable-fink --enable-asimage --enable-mathmore --enable-minuit2 --enable-xml

すると,

configure: libXft not in same directory as libX11
For consistency they should be in the same directory

と怒られる.
確かに,libX11は/usr/X11R6/libにあり,libXft.laが/sw/libにあるので,シンボリックリンクをはってみたが,やっぱり怒られます.

そこでgoogle先生に聞いてみると,やはりmacでrootをうまくビルドできない人がいるらしい.
原因はxft2-devというパッケージにあるらしいので,おそるおそる削除.
もう一度./configureしてみたら,うまく通って,makeもできました.

$ source /opt/root/bin/thisroot.sh
$ root

とやってrootが起動することを確かめました.

それから,システムの環境変数をセットしようと思って ~/.MacOSX/environment.plistを編集しようとしたところ,ない!!

これについてはまた後日.