mod_uploader 取扱説明書 (CGI 版用)

mod_uploader: CGI として動作する高速アップローダ

Contents

mod_uploader とは?

mod_uploader は,よくあるアップローダを C++ で実装したものです.以下の ような特長があります.

動作サンプル

http://acapulco.dyndns.org:8888/up/

動作環境

mod_uploader は,UNIX 系 OS で動作します.詳細を以下に示します.

開発は,Gentoo Linux kernel 2.6.10 ,GCC 3.3.5 ,ImageMagick 6.1.8.8 ,ffmpeg 0.4.9 で行っています.

ライセンス

The zlib/libpng LicenseThe zlib/libpng License の翻訳 )に従いま す.

ダウンロード

CVS リポジトリ

下記のようにすることで check out できます.(パスワードは空)

$ cvs -d:pserver:anonymous@cvs.sourceforge.jp:/cvsroot/mod-uploader login
$ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.jp:/cvsroot/mod-uploader co mod_uploader

また, ViewCVS 経由で参照 することもできます.

バグ情報

バグ情報

バグを見つけた場合は,リンク先の「新規レポート」から書き込んでください.

コンパイル方法

UNIX 系 OS

GNU Compiler Collection でコンパイルする場合は,

$ ./configure
$ make cgi-module

とします. Intel C++ Compiler でコンパイルする場合は,

$ env CC=icc ./configure
$ make cgi-module

とします.

configure は次のオプションを受け付けます.エラーがでた場合は, --with-aprconf や`--enable-iconv-const`_ を試してみてください.

--with-aprconf = APRCONF
apr-config コマンドのパスを指定します.自動的に検出されない場合に使用 して下さい.
--with-libtool = LIBTOOL
libtool コマンドのパスを指定します.自動的に検出されない場合に使用し て下さい.
--with-march = CPU
特定の CPU 向けに最適化したい場合に使用します.例えば,Pentium 4 に最 適化したい場合は, --with-march = pentium4 とします.
--enable-thumbnail
ファイルのサムネイル画像を生成したい場合に指定してください.
--enable-movie
ffmpeg を使って動画のサムネイル画像を生成したい場合に指定してくださ い. --enable-thumbnail と組み合わせて使用します.
--with-mconf = MCONF
Magick++-config コマンドのパスを指定します.自動的に検出されない場合 に使用してください.
--with-writer = TYPE
ファイルを書き出す方法を指定します.basic と mmap が指定可能です. (デフォルト: basic)
--with-ie-name-code = CODE
Internet Explorer に対してファイル名を出力するときの文字コード. (デフォルト: cp932)
--enable-iconv-const iconv の第二引数に const をつけるかどうか.
Mac OSX TigerFreeBSD を使用している場合は指定する必要があり ます.

各環境での例

Gentoo Linux

$ ./configure
$ make cgi-module

FreeBSD

$ env CPPFLAGS="-I/usr/local/include -L/usr/local/lib" ./configure --enable-iconv-const --with-libtool=/usr/local/bin/libtool15
$ gmake cgi-module

Mac OSX Tiger + Fink

$ env CPPFLAGS="-I/sw/include" ./configure --enable-iconv-const --disable-rwlock
$ env MACOSX_DEPLOYMENT_TARGET=10.4 make cgi-module

インストール

(以下書きかけ)

テンプレートの書式

Comming soon...

API ドキュメント

http://acapulco.dyndns.org/mod_uploader/api/

ツール

プログラムの作成にあたってお世話になったツールを紹介します.

Valgrind
メモリの不正な参照や解放し忘れなどをチェックしてくれるツール.デバッ グでかなりお世話になりました.

参考文献

プログラムの作成にあたってお世話になった文献を紹介します.

libapr (apache portable runtime) programming tutorial
APR のチュートリアル.サンプルコードおよび,間違いやすい点についての 記述が多いので重宝します.
Using libavformat and libavcodec: An Update
libavformat と libavcodec を使って動画からフレーム画像を取り出す方法 を解説したページ.丁寧に書かれています.
STL のページ
C++ の標準テンプレートライブラリである STL について簡潔にまとめられた サイト.
RubyExtensionProgrammingGuide
Ruby の拡張ライブラリの書き方を解説したサイト.基本的な事項から少し高 度な話題まで非常に良くまとまってます.
Compiler Construction Lecture
コンパイラ作成に関する実践的な内容が簡潔にまとめられたサイト.簡単な インタプリタもどきを作るんだったら,このサイトだけで十分かも.