GLSC については、最近では
秋山正和オフィシャルサイトにある G.L.S.C. を make してみた、という話。
マニュアルは GLSCマニュアル にある。
コンパイルの仕方は従来と違いはない。 glsc-3.8.6.zip を入手して、
unzip glsc-3.8.6.zip cd glsc-3.8.6(適当に Makefile を編集して make; sudo make install) |
単精度版のライブラリィを作らなくなったこと。 それで d も s もつかない、 libglsc.a という名前になった (なるほど)。
機能の説明を読んでいて、 上山パッチの機能は含んでいるような気がしたので (この辺は後で良く調べよう)、 今後はこちらを使うのが良いのかもしれない。しばらく並行利用か。 試しに桂田パッチも作ってみた。
mkdir sagyou cd sagyou curl -O http://www-mmc.es.hokudai.ac.jp/~masakazu/Software/glsc-3.8.6.zip curl -O http://nalab.mind.meiji.ac.jp/~mk/program/graphics/glsc-3.8.6-mk-patch unzip glsc-3.8.6.zip cd glsc-3.8.6 patch -p1 < ../glsc-3.8.6-mk-patch |
Fortranコンパイラーが要らなければ |
mv Makefile Makefile.org cp Makefile.mk Makefile make>&make.log sudo make install>&make-install.log |
ライブラリィ・アーカイブファイル libglsc.a は、 これまでのと名前が衝突しないし、 glsc.h は関数が増えただけみたいだし、 上書きして、上山版と秋山版を両方インストールしておける気がする。
(2019/2/9加筆) libglscd.a を libglsc.a へのシンボリック・リンクと してしまうので、混在させるときは最後の make install の時に、 注意が必要である。
コンパイル・スクリプト Manual/cglsc があるけれど、 パスが現在の Mac では使えなさそう。 この辺はまた考えよう。
とりあえず
cglsc386 |
#!/bin/csh -f if ($#argv >= 1) then if( '-s' == "$1" ) then echo GLSC 3.8.6 では単精度はサポートされていません。 shift else set glsc=glsc #set exflag=-DG_DOUBLE endif endif if ($#argv == 0) exit 0 #set main=$1:r cmd=("cc -g -O") set main=$1:r cmd=("cc -O2") foreach f ($argv) set cmd=($cmd ${f:r}.c) end exec $cmd -I/usr/X11/include -I/usr/local/include -o $main -L/usr/local/lib -l$glsc -L/usr/X11/lib -lX11 -lm |
一応、このスクリプトのインストール法も書いておくと
curl -O http://nalab.mind.meiji.ac.jp/~mk/program/graphics/cglsc386 chmod +x cglsc386 sudo mv cglsc386 /usr/local/bin |
桂田 祐史