DO NOT EDIT THIS FILE. Oct 9, 2006. Generating universal binaries for MacOS X. Reference: http://macwiki.sourceforge.jp/cgi-bin/wiki.cgi?UniversalBinary PPC では -arch i386 -arch ppc の他に -isysroot /Developer/SDKs/MacOSX10.4u.sdk option が必要. Xcode の Package の中の, Cross-Developement.mpkg を忘れない. 別々の architecture で生成して, lipo でくっつける方法の方が推奨らしい. cf. Example: gcc -arch i386 -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk ox.c -o ox or gcc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk ox.c -o ox-i386 gcc -arch ppc -isysroot /Developer/SDKs/MacOSX10.4u.sdk ox.c -o ox-ppc lipo -create ox-i386 ox-ppc -output ox Sep 2, 2004, Update for tigers (10.4) June 23, 2005. Q. MacOS X (10.3, panther)で OpenXM package を make するにはどうしますか? [1] fink をインストールしてなければインストールします. fink は Unix の Open Source software を Mac OS X でパッケージとして 扱うための基礎システムです. fink をインストールすると, Debian linux や Fedora, wine 等でおなじみのパッケージ管理コマンド apt-get が 使えるようになります. http://fink.sourceforge.net/index.php?phpLang=ja よりダウンロード. [2] xterm を開き, wget を apt-get でインストールします. apt-get install wget なおインストールされてるソフトの一覧は dpkg --list でみれます. fink でインストールされたコマンドは /sw/bin の下にインストールされます. [3] OpenXM のソースをダウンロードして他の unix と同様な方法で make します. なお wget は gc, gmp のソースを ftp でネットワークダウンロードするのに 利用されます. マニュアル等を正しく処理するには, tex, ptex, nkf 等のインストール も必要です. とりあえず実行形式を得るためには不要. Mac OS X 10.4 (tiger) のためのノート. [A] XcodeTools 2.1 をインストールすると, gcc version 4.0 が標準でインストール される. 現在のところgcc-4.0 のもとではいろいろと問題が生じる. したがって gcc-4.0 の代わりに gcc-3.3 を使う. (たとえば sudo gcc_select 3.3 とすればよい) GC の版 (OpenXM/src/gc) は 6.5 (or later). wget がない場合は次ぎのようにする. cd OpenXM ; mkdir ../OpenXM_dist ; cd ../OpenXM_dist ftp://ftp.math.kobe-u.ac.jp/pub/OpenXM/misc/ の全てのファイルを OpenXM_dist へ make の前にコピーしておく. DYLD_LIBRARY_PATH 環境変数は使用しない. cf. OpenXM/rc/dot.bashrc Feb 7, 2004 Q. Solaris 5.5.1 で make すると kan96xx の make で __register_frame_info がないといってコンパイルがとまる. A. OpenXM_contrib/gmp (version 4.1.2) をつぎのようにして version 3.1.1 に置き換えるとうまくいきます. rm -rf OpenXM_contrib/gmp cvs -d :pserver:anoncvs@kerberos.math.kobe-u.ac.jp:/home/cvsroot/openxm checkout -D '2002-01-01 0:00' OpenXM_contrib/gmp 匿名 cvs については http://www.math.sci.kobe-u.ac.jp/OpenXM/Current/anonymous.html を御覧ください. Nov 15, 2003 (For developpers) Q. Cvs で commit するとき -m option がうまく動きません. 次のような shell ファイルで cvs を呼び出しているとしたら, cvs -d abc.openxm.org:/usr/cvs $* 次のようにかえます. cvs -d abc.openxm.org:/usr/cvs "$@" 参考文献: 砂原ほか, 「プロフェッショナルシェルプログラミング」, アスキー出版局 Nov 11, 2003 Q. RedHat 8.0 でコンパイルできません. ソースを checkout してすぐに, " touch OpenXM/src/gc/.use_ports " をしてから make install して下さい. make している間に gc6.2 のソースコードをダウンロードしますので internet に つないでる必要があります. May 9, 2003 Q. Debian GNU/Linux で asir が make できない. A. libxaw7-dev をインストールして下さい. ちなみに OpenXM_contrib2/fep を make するには libncurses5-dev をインストールする必要があります. April 23, 2003 Q. OpenXM サーバが立ち上がらない. (ウィンドウが一瞬現れて消える.) A. XFree86 4.3.0 の xterm の国際化対応が不完全なせいです. 以下のいずれか を試してみて下さい. 1. .Xdefaults, .Xresources などに次の行を追加する. XTerm*locale:false 2. LANG, LC_CTYPE, LC_ALL などの環境変数を消す. March 7, 2003 (for developers) Q. asir2000 用の configure が新しい OS に対応していない. A. OpenXM/doc/HOWTO/asir2000-autoconf-note-ja を御覧下さい. October 23, 2002 (for developer) Q. commit メッセージのみ加えたい. A. 正しいログを書いてファイルに保存しておき、 cvs commit -f -F とすれば、内容を変更せずにログだけを更新することができますが、 revision はひとつ進みます。害はないです。 (そのログには (null commit) とかいれておくとそれらしくなります) (by まえかわ) March 16, 2002 (for developer) Q. asir を cygwin で make したい. asir の cygwin 上での make には, XFree86 for cygwin が必要です. これは, cygwin のホームページからダウンロードできます. export PATH=/usr/X11R6/bin:$PATH cd OpenXM/src/asir2000 rm .*done make March 7, 2002 (for developer) Q. HEAD にタグをつけるには? cvs rtag -r HEAD RELEASE_1_2_1 OpenXM OpenXM_contrib OpenXM_contrib2 December 27, 2001 (Windows) Q. asirgui で engine.exe の位置が registry に登録されています. これを消すには? MSDOS コマンドプロンプトより regedit を立ち上げて, HKEY_LOCAL_MACHINE->SOFTWARE->FUJITSU のなかの ASIR を全て消す. December 24, 2001 (Windows) Q. OpenXM/misc/packages/Windows/asirgui2.bat を起動しようとすると, "環境変数領域がたりませんとエラーがでます. Windows 95/98/ME でこの問題がおきます. 環境変数領域を増やします. command /e:5000 で command.com を立ち上げるのは一番簡単な方法. msconfig (win98/ME) または sysedit (win95) を用いて, 環境変数 shell 値 c:\windows\command.com /p /e:5000 とする. August 10, 2001 (Windows, developer) Q. cygwin 環境で : から始まる sh ファイルが動かないことがあります.(開発者向け) Login shell が csh 系の場合この現象がおきるようです. OpenXM/src/kan96xx/Kan/cat0, OpenXM/src/kan96xx/Kan/ar-decomp の : を #!/bin/sh に置き換えてください. May 6, 2001 (developer) Q. tab をスペースで置き換えたい. (開発者向け) A. (For emacs). Esc x mark-whole-buffer Esc x indent-region Esc x untabify May 6, 2001 (developer) Q. gcc が定義するシンボル名を知りたい. (開発者向け) A. ダミーのファイル foo.c を作成して, gcc -v -c foo.c Jan 18, 2001 (user, developer) Q. Debian potato で OpenXM/src/ox_math (Mathematica の OpenXM サポート) のソースがコンパイル, 実行 できません. A (by Ohara). 1. Mathlink は glibc2.1 では正しく動作しません. http://www.wolfram.com/solutions/mathlink/devkits.html から Linux x86 版の C/C++ MathLink SDK を入手し, libML.a を取り換えます. MathLink SDK には二種類の libML.a が含まれているので注意すること. 2. apt-get install libc5 で libc5 をインストールする. Dec 17, 2000 (user) Q. Debian potato で OpenXM server 用の xterm がひらかず, OpenXM server が起動できません. A (by Ohara). (原因) Debian 2.2 で xterm -e a.out でプロセスを起動した場合、 a.out には環境変数 LD_LIBRARY_PATH が伝達されません!! (結果) oxc は $OpenXM_HOME/lib/libgmp.so とリンクしているので、リンカ がダイナミックリンクを解決できずに、起動すらできなかったわけです。 (解決) /lib に libgmp.so にシンボリックリンクをつくる。 例: root になって cd /lib ln -s $OpenXM_HOME/lib/libgmp.so . ln -s $OpenXM_HOME/lib/libpari.so . などを実行. Nov 30, 2000 (user) Q. Redhat Linux を利用しています. libgd がないので RPM パッケージのインストールが失敗します. (A) http://www.redhat.com/downloads より, libgd をサーチします. (B) libgd 1.3 を download して, rpm でインストールします. www.redhat.com では, 最新版の Redhat 用の libgd しかみつからないかも しれません. その場合は http://rpmfind.net で探して下さい. たとえば Redhat 6.2 用の libgd は http://rpmfind.net/linux/RPM/redhat/6.2/i386////gd-1.3-6.i386.html にあります. ネットスケープの場合ならここにアクセスし, gd-1.3-6 RPM for i386 を shift+click して gd-1.3-6.i386.rpm をダウンロードします. Sep 28, 2000 (user) Q. asir より ssh を用いて remote の ox サーバを起動できません. A. (A) ssh がただしく動作しているかまずしらべます. ssh -f -X -A remote-machine-name xterm で xterm が起動しますか? ssh の version によっては -X -A などの option をうけつけません. シェルスクリプト /usr/local/bin/asir の ASIR_RSH を変更して下さい. command not found の時は, .cshrc, .bashrc に xterm を起動できるように パスを加えます. 例: set path=(/usr/X11R6/bin $path) (.cshrc) export PATH=/usr/X11R6/bin:$PATH (.bashrc) (B) 1.1.3 では, remote machine の login shell が bash, sh の時は remote server を起動できません. この bug は, 次の version で変更されます. (C) asir より, ox_launch(remote-host-name,"/usr/local/OpenXM/lib/asir","ox_asir"); で ox_asir server を起動できるか試して下さい. 起動できないときは, ASIR_RSH に -v option を加えて (例: ASIR_RSH='ssh -v -f -X -A ' ) ssh を debug mode で起動し, 原因を探します. April 12, 2000. (user) Q. openxm*.rpm を利用しているのですが, asir と入力すると, /var/tmp/openxm-root/OpenXM/bin/asir is not found とエラーがでて起動できません. A. Become root and type in the following command sequences: cd /usr/local/OpenXM/rc make clean; make install ------------------------------------------------------------------- Q. 1999, 11/10: " (file) run " を ox_sm1 に送って executeStringByLocalParser しても ファイルをロードしてくれません. A. "[(parse) (file) pushfile] extension " で読み込んでください. ox_asir も load("file") を executeStringByLocalParser しても だめです. "file", 1, "load" をスタックへ積んでから execute します. ox_math も "<< file" executeStringByLocalParser しても だめです. Q. 1999, 11/10: OX サーバを起動しようとしても起動しません. asir を起動したあと, ox_launch したら, segmentation fault した. A. OpenXM は home directory の直下にあり, また OpenXM/rc/bashrc で環境 変数を正しく設定しましたか? Q. 1999, 11/10: sm1 は * をつかえないのですか? A. *もつかえます. x*y も x y も同じいみです. Q. 1999, 11/12: sm1 は 有理数を係数とする多項式を扱えないのですか? A. いまのところ扱えません. OpenXM/lib/asir/xm の 関数 sm1_rat_to_p() は有理数係数の多項式を sm1 が扱いやすいような 整数係数の多項式に変換してくれます. Q. 1999, 11/12: Solaris 2.5.1 で pari のコンパイルがうまくできません. A. | Solaris 2.5.1 ですが, いきなり pari の make でこけますね. | | /usr/local/bin/as -o kernel.o kernel1.s | kernel1.s: Assembler messages: | kernel1.s:1: Error: Rest of line ignored. First ignored character is `/'. | make[2]: *** [kernel.o] Error 1 | make[2]: Leaving directory `/home/taka/OpenXM/src/pari-2.0.17.beta/Osolaris-spar | cv9' | make[1]: *** [install] Error 2 これは私も以前はまりました. Osolaris-sparcv?/Makefile で AS=/usr/local/bin/as となっているせいです. これは AS=/usr/ccs/bin/as でなければ make に失敗します. Solaris の場合には /usr/ccs/bin が /usr/local/binより先にサーチされるように path を設定する必要があります. このように設定しておくと configure の時自動的にAS=/usr/ccs/bin/as としてくれる. Q. pari で, LLL algorithm をつかうのにはどうしますか? A. gp (Starting pari) x = [1,0 ; 0,1] (Define a matrix. Do not use [[1,0],[0,1]].) qflll(x) Q. Asir より pari をよびだして, LLL algorithm をつかうのにはどうしますか? A. asir X = newmat(2,2,[[1,0],[0,1]]); pari(lll,X);