Linux開発ツール・ライブラリ
ツール
gtkdiff 1.0.2
diffのフロントエンド。
http://www.ainet.or.jp/~inoue/software/
(2011.8) gtkdiffはネットワーク上からロストしてしまっています。現在は Meld がいいでしょう。GNOME 2世代です。Fedora Linux にはパッケージも含まれます (meld).
memprof 0.3.0
メモリーリークを調べる。対象プログラムを再コンパイルする必要もない。
depends on libglade
(2011.8) 2010年7月リリースのバージョン0.6.2 が最新。いつの間にか GTK+ 2.x 対応になっている。
同種のソフトとしては valgrind がある。Valgrind: Front Ends / GUIs に、GUIラッパがいくつか挙がっている。
DDD (The Data Display Debugger) 3.2.1
GUIなデバッガ (gdbのラッパ)。Motif ベース。
ddd/ddd.Cのmain(),
XtAppContext app_context;の次に
XtSetLanguageProc(NULL, NULL, NULL);を書き加える
lesstifだとちっとも変わらんが。
(2011.8) DDDは非常に強力だが、今どきMotifは厳しい。同種のソフトとしては、Insight がrpmパッケージも用意されている (Tcl/Tk)。
GUIツールキット
vdk 1.0.5
VDK (The Visual Development Kit) は、Gtk+のC++ラッパ。RADツールであるVDKBuilderと併用する。
Qt Free Edition 2.1.1
ユーザーインターフェイス・ライブラリ
(参考)Qt-1.44-i18nパッチ:
http://www.asahi-net.or.jp/~hc3j-tkg/
/opt$ gzip -dc qt-x11-2.1.1.tar.gz | tar xvfm -
展開するとき,tarにmオプションを付けること。更新日時の変更で失敗する。
gtk+/glib 1.2.8
ウィンドウシステム用UIライブラリ。X標準の大部分を置き換えるつもりらしい。
- GTK+
<GTK+ -- The GIMP Toolkit>
<ftp://ring.so-net.ne.jp/pub/graphics/gimp/gtk/> - チュートリアル
<http://www.aist-nara.ac.jp/~mitsu-o/> gtk+ v1.0 Tutorial日本語訳
<GTK v1.2 Tutorial>
<http://www.marimo.or.jp/~hiromi/linux/gtk/> gtk+ v1.2 Tutorial日本語訳
prefix=/usrを付けるのは,Red Hat 5.2に予めインストールされているgtk+ 1.0.6のgtk-configを強制的に置き換えるため。
- アンインストール
# rpm -e gimp-devel # rpm -e gtk+-devel
- glib 1.1.14
$ ./configure --prefix=/usr --enable-mem-check $ make $ su # make install
--enable-mem-checkを付けないとgimp-1.1.0が起動しない。原因は不明。
- gtk+ 1.1.14
$ ./configure --prefix=/usr --with-locale=ja_JP.ujis $ make $ su # make install
LessTif 0.89.9
UIライブラリ。Motif 1.2互換。日本語が全く通らないので,使ってない。
$ ./configure --disable-build-12 --enable-default-20 --with-xdnd --with-editres i586-pc-linux-gnu $ make $ su # make install
コンパイラ・言語
gcc 2.95.2 + libstdc++ 2.90.8
C/C++コンパイラ。
libstdc++は: http://sourceware.cygnus.com/libstdc++/
/opt/gcc-2.95.2$ mv libstdc++ libstdc++-v2
/opt/gcc-2.95.2$ mv libio libio-v2
/opt/gcc-2.95.2$ tar xzvf ../libstdc++-2.90.8.tar.gz
/opt/gcc-2.95.2$ ln -s libstdc++-2.90.8 libstdc++
/opt/gcc-tmp$ ../gcc-2.95.2/configure --prefix=/usr --enable-shared
--enable-threads
/opt/gcc-tmp/i586-pc-linux-gnu/libstdc++$ /opt/gcc-2.95.2/libstdc++/configure
--prefix=/usr --enable-shared --enable-threads=posix
/opt/gcc-tmp$ make
/opt/gcc-tmp$ su
/opt/gcc-tmp# make install
configureに与える引数はgcc/configure.inを参照。
--enable-nls --enable-c-mbchar はCソース中にワイド文字リテラルを書けるようにする。glibc 2.0 + libwcsmbsではこのオプションを有効にするとgccがおかしくなるが,glibc 2.1なら問題なし。
2000.05.18 --enable-nls --enable-c-mbcharは美味くない
egcs 1.1.2
C/C++コンパイラ
/opt$ tar zxvf egcs-1.1.1.tar.gz /opt$ patch -s -p0 < egcs-1.1.1-1.1.2.diff $ ./configure --prefix=/usr i586-pc-linux-gnu $ make # rpm -e egcs egcs-c++ egcs-g77 egcs-objc # rpm -e gcc # rpm -e libg++ # rpm -e libstdc++-devel # make install
/usr/lib/libstdc++.aをアンインストールできないので,/usr以下にインストールする
# ln /usr/lib/gcc-lib/i586-pc-linux-gnu/egcs-2.91.66/cpp /lib/cpp
Java2 SDK 1.2.2
Javaコンパイラ & Java仮想機械(virtual machine)
- Java互換環境であるkaffeを削除
# rpm -e kaffe-1.0.b2-2
- バイナリの解凍
/opt# tar zxvf jdk1.1.5-v7-glibc.tar.gz /opt# unzip hjb112-generic.zip
- 環境設定
~/.bash_profileで
export JAVA_HOME="/opt/jdk1.1.5" export JDK_HOME="$JAVA_HOME" export HOTJAVA_HOME="/opt/HotJava1.1.2" export CLASSPATH=".:$JAVA_HOME/lib:$JAVA_HOME/lib/classes.zip" export PATH="$PATH:/usr/local/bin/Wnn4:$HOME/bin:$JAVA_HOME/bin:$HOTJAVA_HOME/bin"
ぐらい。
ruby 1.4.5 (2000-06-26)
簡易言語インタプリタ。
/opt$ tar zxvf ruby-1.4.5.tar.gz /opt/ruby-1.4.5$ ./configure --with-default-kcode=euc /opt/ruby-1.4.5$ make /opt/ruby-1.4.5$ su /opt/ruby-1.4.5# make install
- Ruby/GTK 0.23
- iconv 0.4.1 Rubyish Archive
- Ruby/libpng 0.3.3 http://www.isc.meiji.ac.jp/~ee77038/ruby/program/libpng.html
- ruby-xlib 0.6.13
- Uconv
- XMLParser
ミドルウェア
mico 2.3.3
CORBA ORB
namespaceをサポートしたC++コンパイラ,例えばegcs 1.1が必要。
$ ./configure --prefix=/usr/local/mico
micoのコマンド群はmico何とかという名前になってないので,ディレクトリを掘って,そこにインストールさせる。
(2011.8) MICO はスピードが遅い。また、ORBit2 は非推奨になっている。C/C++用で実用的なCORBA ORBは、omniORB がある。
Zope 2.1.5
Webアプリケーションサーバ
python 1.5.2でスレッドを有効にしたものが必要。 http://www.python.org/
pythonの構築は次のようにする。
$ ./configure --prefix=/usr --with-thread
$ python w_pcgi.py # Note, this must be Python 1.5.2 $ ./start
その他
glibc 2.0.7 with wcsmbs
基本ライブラリ。Red Hat Linux 5.xで使われているglibc-2.0はそのままでは日本語が使えない。
wcsmbs-localeはPJE, Vineにもあるが,JRPMのがよさそう。PJEは既にプロジェクト自体が破棄されていて(尻拭いをしてないのでファイルはダウンロードできるが)内容も古い。Vineはjaとja_JPが独立したエンコーディングになっていて,明らかにおかしい。
'libwcsmbs-*.i386.rpm'と'wcsmbs-locale-*.i386.rpm'の二つのファイルが必要。
XML4C++ 3.0.1
XMLパーサー
(2000.01.29) ソースからは構築に失敗したので,バイナリを取ってくる。icuが含まれているので,別にicuを取ってくる必要はない。
.bashrcに次の記述を追加。なぜか/etc/ld.so.confだとうまくいかない。
export XERCESCROOT="/opt/xml4c-3.0.1" export LD_LIBRARY_PATH="$XERCESCROOT/lib" export PATH="$XERCESCROOT/bin"