Kazuhiro's blog
ようこそ! Kazuhiro's blog
火曜日, 3月 19 2024 @ 04:47 午後 JST
   

FreePWINGで4GB以上の書籍を作成する

general

JIS X 4081では理論上は1ファイル約190GBまでの書籍が構築可能ですが、EBStudioやFreePWINGではそのような大きな書籍は作成できません。 作成するのにどの程度手間がかかるか、wikipedia-fpwが2GBの壁に届く前にちょっと試してみました。

まず、FreePWINGにパッチをあて、4GB超の書籍を作成できるようにしてみました。

  • 必要なもの
    large fileをサポートし、64ビットintなperl

    perl -V等で、Compile-time optionsにUSE_64_BIT_INTUSE_LARGE_FILESが存在している事を確認してください。

    large fileをサポートするファイルシステム

    例えばFAT32では4GBを超えるファイルを作成できません。

    パッチ

    FreePWING 1.5にあてるパッチです。 もうちょっと工夫すれば32ビットintなperlでも大丈夫そうな気がしますが今回は見送ります。

oald7-fpwで、テキスト登録時にテキストを水増しして4GB超の書籍を作成してみたところ、エラーも起きずにそれっぽいものが作成されました。 次にブラウザ側の検証です。

  • 4GB超の書籍を扱える(であろう)アプリケーション
    EB Libraryを利用するアプリケーション

    64ビット環境の場合はebzip以外は動作すると思いますが未確認です。 32ビット環境でoff_tが64ビット以上の場合は、パッチが必要ですが動作しました (NetBSD 4.0_BETA2)。

  • 4GB超の書籍を扱えないアプリケーション
    EB Libraryを利用するアプリケーション

    Windows環境 (Cygwin + MinGWでビルドしたもの) では扱えませんでした。 ちょっとした小細工で何とかなりそうな気はしますがまだ未検証です。

    ebzip

    4GBまでのファイルしか想定されていません。

    EBWin

    正しく扱えませんでした (2.09)。

    DDWIN (おそらく)

    未確認です。

(追記) Cygwin + MinGWではMinGWのインクルードファイルにパッチをあてれば_FILE_OFFSET_BITSを設定することでoff_tを64ビットにできるので何とかなりました。

(追記の追記) EB Libraryとebzipは4.4以降で、EBWinは3.01以降で4GB超の書籍に対応しました。

タグ:FreePWING EB Library EPWING

トラックバック

このエントリのトラックバックURL: http://ikazuhiro.s206.xrea.com/trackback.php/20081015153410456

'FreePWINGで4GB以上の書籍を作成する'について他のサイトでは次のように言及されています:

英語版WikipediaのダンプデータをJIS X 4081に変換する from Kazuhiro's blog
FreePWINGによる巨大書籍の作成実験の一環としてとしてウィキペディア英語版の変換を試みました。 続きを読む
トラックバック オン 火曜日, 10月 28 2008 @ 07:09 午後 JST

FreePWINGで4GB以上の書籍を作成する | 0 件のコメント | アカウントの作成
コメントは投稿者の責任においてなされるものであり、サイト管理者は責任を負いません。