VC6でPNGライブラリをビルドする

ひょんなことから、PNGをいじくる事になったのでlibpngのビルド方法を備忘録がてら書いておく。環境は以下の通り。

  • VC6
  • zlib1.2.2
  • libpng1.2.8
  1. ソースのダウンロード
    http://www.libpng.org/pub/png/pngcode.html
    から、zlib と libpng のソースをそれぞれダウンロード
  2. プロジェクトファイルの改行コード変更
    予めVC6用のプロジェクトファイルが png1.2.8/projects/visualc6 に用意されてるのだが、何故かこれがVCで開こうとしても開けない。よく見るとこのファイルの改行コードは LF しかないので、CR+LF に変更する。同様に、libpng.dsp、pngtest.dsp も改行コードを変更する。
  3. プロジェクトファイルのOPEN
    libpng.dswをOPENすると、zlibプロジェクトファイルのパスを聞かれる。zlibもVC6用のプロジェクトファイルが用意されているのでzlib1.2.2/projects/visualc6/zlib.dspを選択する。
  4. インクルードパスの設定
    一応zlib.を参照するように設定されているのだが、どのようなフォルダ構成になっているかで設定し直す必要が出てくるかもしれない。
    「プロジェクトの設定」→「C/C++」→「プリプロセッサ」→「インクルードパス」で設定する。libpngプロジェクトとpngtestプロジェクトが対象。
    余談だが、プロジェクトの種類がいっぱいあるので、設定する際には、「設定の対象」を「すべてのの構成」にするとよい。
  5. リンクモジュールの設定
    pngtestプロジェクトが対象だが、同じくフォルダ構成によって変更しないといけないかもしれない。
    「プロジェクトの設定」→「リンク」→「一般」→「オブジェクト/ライブラリモジュール」で自分の環境に合わせて設定する。
  6. ビルド
    pngtest プロジェクトをアクティブプロジェクトにしてビルドを行うと、zlib、libpngがビルドされるはず。問題なくビルドが完了すれば、最後にテストプログラムの実行結果が出力されるハズ。

ちょっと時間はかかるかもしれないが、パス設定さえちゃんとやればできるはず。がんばれ<自分
明日は、プロジェクトファイルについて説明しよう。