開発環境メモ(2002/09/25) 
 

開発環境

通常 GNU 関係のメイク/コンパイルには、GNUmake , GNUgcc が推奨されている様ですが、「Software Companion」CD をインストールしても、実際使用する場合、パス等が通っていないため具合が悪いです。しかも日本語に対応していないなどなど、ありますので素敵な環境にしましょう。

GNUmake 3.79.1

make コマンドは、Solaris 標準の /usr/ccs/bin/make となってしまっているので、これを GNU Make version 3.79.1 に変更します。GNUmake コマンドは /opt/sfw/bin/gmake となっているので、これを普通に使う make コマンドとして変更します。

 ~/.cshrc の修正(/usr/ccs/bin より先に /opt/sfw/bin を指定する

set path=( /usr/local/bin /usr/local/sbin \
         /opt/sfw/bin /usr/bin /bin /usr/sbin /sbin /usr/ccs/bin \
         /usr/openwin/bin /usr/ucb .)

/opt/sfw/bin の作業

# cd /opt/sfw/bin
# ln -s gmake make

下記の様な結果になればokです

% make -v
GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
Built for i386-pc-solaris2.8
Copyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000
        Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

Report bugs to <bug-make@gnu.org>.

GNUpatch 2.5.4

標準で入っている patch コマンドでは、パッチを当てられない場合があるので GNU の patch を使います。

% wget http://sunsite.sut.ac.jp/pub/archives/gnu/patch/patch-2.5.4.tar.gz
% gzip -cd patch-2.5.4.tar.gz | tar xf -
% env CFLAGS=-O3 ./configure
% make
# su
# make install-strip
   → /usr/local/bin/patch

GNUtar 1.13

 

% wget http://sunsite.sut.ac.jp/pub/archives/gnu/tar/tar-1.13.tar.gz
% gzip -dc tar-1.13.tar.gz | tar xvf -
% cd tar-1.13
% wget http://www5c.biglobe.ne.jp/~yatt/dist/tar-1.13-bzip2.patch
% /usr/local/bin/patch -p1 < tar-1.13-bzip2.patch
% env CFLAGS=-O3 ./configure --disable-nls
% make
# su
# make install-strip
   → /usr/local/bin/tar

less 358

 

% wget http://www.io.com/~kazushi/less/less-358.tar.gz
% tar xzf less-358.tar.gz
  ※ GNUtar です
% cd less-358
% wget http://www.io.com/~kazushi/less/less-358-iso254.patch.gz
% wget http://www.io.com/~kazushi/less/regex_cs-lwp9k.shar.gz
% gzip -cd less-358-iso254.patch.gz | patch -p1
  ※ GNUpatch
% gzip -cd regex_cs-lwp9k.shar.gz | sh
% env CFLAGS=-O3 LDFLAGS="-L/opt/sfw/lib -R/opt/sfw/lib" ./configure --with-cs-regex
% make
% su
# make install-strip
# pkgrm SUNWless
  ※ 既に導入されている less パッケージを削除する

Perl 5.6.1

 

system SUNWpl5m Perl5 On-Line Manual Pages
system SUNWpl5p Perl 5.005_03 (POD Documentation)
system SUNWpl5u Perl 5.005_03

上記パッケージを消す
# pkgrm SUNWpl5m 
# pkgrm SUNWpl5p 
# pkgrm SUNWpl5u 

% wget http://sunsite.sut.ac.jp/pub/archives/cpan/src/perl-5.6.1.tar.gz
% gzip -cd perl-5.6.1.tar.gz | tar xf -
% env LD_RUN_PATH=/usr/local/lib ./Configure -de
# su
# env LD_RUN_PATH=/usr/local/lib
# make
# env LANG=C
# make test
# make install
  ※ make install 時に /usr/bin/perl -> /usr/local/bin/perl のリンクを
     作るかどうか聞かれるので yes と答えておく。 

wget

パッシブモードでアクセスする方法  wget --passive-ftp

・Proxy経由でアクセスする方法「環境変数に HTTP_PROXY=http://proxy」

   参考サイト:wget

   参考サイト:Wgetを使おう的ページ

Apache 1.3.23

mod_dav で DSO化するのでここでは、標準的にコンパイルする方法を紹介するだけとします

system SUNWapchd Apache Web Server Documentation
system SUNWapchr Apache Web Server (root)
system SUNWapchu Apache Web Server (usr)

上記パッケージを消す
# pkgrm SUNWapchd
# pkgrm SUNWapchr
# pkgrm SUNWapchu

% mkdir -p /opt/local/src
% cd /opt/local/src
% wget http://httpd.apache.org/dist/httpd/apache_1.3.23.tar.gz
% gzip -cd apache_1.3.23.tar.gz | tar xf -
% wget http://www.apache.org/dist/httpd/patches/apply_to_1.3.23/solaris-apache-1.3.23.patch
% patch -p1 < solaris-apache-1.3.23.patch
% env CFLAGS=-O3 ./configure --prefix=/opt/local/apache
% make
# su
# make install
   ※ /etc/apache/httpd.conf
      /opt/local/apache/bin/apachectl start

w3m

UNIX のテキストベースで、WWWブラウザがないのかな?と思っていたら、こんなんありました「高機能なページャ/テキストベースWWWブラウザ w3m」

% cd /opt/local/src
% wget http://mi.med.tohoku.ac.jp/~satodai/w3m/src/w3m-0.2.5.1.tar.gz
% gzip -cd w3m-0.2.5.1.tar.gz | tar xf -
% cd w3m-0.2.5.1
% ./configure
    ※ 英語の設問にいくつかの設問に答えていきますが、簡単です♪
% make
% su
# make install
% w3m
    ※ proxy経由でアクセスする場合は、環境変数「HTTP_PROXY」を設定する。 

   本家:w3m Home Page

   参考:w3mに関して良く聞かれる(であろう)質問とその答え

圧縮/解凍方法

tarボール(tgz, tar.gz)の圧縮方法と、解凍方法だす

圧縮:
% tar cf - file1 file2 .... | gzip > ????.tar.gz

解凍:
% gzip -dc ????.tar.gz | tar xvf - [file1 file2 ....]