うまくできたので、紹介。
これで C で CGI が書ける(ぁ
ちょっとバイナリサイズが大きいのが難点か(shared をオンにしなかったから)
あとで shared をオンにしてやってみるか。
Binutils → 2.17
GCC → 4.1.2
(システムと同じバージョンを採用)
まずは解凍。
$ tar zxvf binutils-2.17.tar.gz $ tar zxvf gcc-4.1.2.tar.gz
そして、Binutils をビルド。
$ cd binutils-2.17 $ mkdir build $ cd build $ ../configure --prefix=/usr/local --target=i386-pc-freebsd7 --host=i686-momonga-linux $ make $ sudo make install
GCC をビルドする前に、FreeBSD の LiveFS CD (約200MB)をダウンロードしてきて、
以下のようにコピー。
GCC から BSD 用の crt とヘッダファイルを要求されるため。
コピー元 | コピー先 |
---|---|
/cdrom/usr/include/* | /usr/local/i386-pc-freebsd7/include/* |
/cdrom/usr/lib/* | /usr/local/i386-pc-freebsd7/lib/* |
では、GCC をビルド。
$ cd gcc-4.1.2 $ mkdir build $ cd build $ ../confiugre --prefix=/usr/local --enable-languages=c,c++,objc,obj-c++ --target=i386-pc-freebsd7 --host=i686-momonga-linux $ make $ sudo make install
うん、以外にすんなりいったな。
テスト: http://lugia.so.land.to/cgitest.cgi
って言ってもわからないかw
successful のつづり間違っているけどそんなに気にしないでw
あ、あと、テストプログラムはそのうちなくなっていると思う。
あのサーバー、SuEXEC が入っているのは良いんだが、権限を厳密に 700 を要求するのねw
755 では動かなかったしw