0

うまくいけば動的な.pdfファイルを作成するプログラムを構築しようとしています。実際にPHP for webで同様のプロジェクトを開発したことがありますが、今度はC++で書きたいと思います。

その結果、過去 4 日間で 3 つのライブラリ (zlib、libpng、libharu) を何度も再構築しました。関連する Web のすべてのエントリ (このスタック オーバーフロー エントリを含む) を読みました

私がしたことを説明したいと思います。Windows 7 で GNU GCC C++ コンパイラ (MingGW) で Codeblocks IDE を使用していることに注意してください。まず、zlib 1.2.7 をコンパイルし、zlib.a 静的ライブラリ ファイルを作成しました (静的ライブラリを使用しています)。次に、libpng 1.5.13 をコンパイルし、libpng.a を作成しました。3 番目に、libharu (スナップショット) をコンパイルし、libharu.a スタティック ライブラリ ファイルを作成しました。次に、それらのライブラリ ファイルをプロジェクトに追加しました。(ここで説明したすべてを行いました)。そして最後に、私のプロジェクトをコンパイルしました。

これらのすべての手順を 10 回以上実行し、いくつかの小さな変更を行ったと言えますが、毎回エラーが発生します。libharu.org の公式の例も試しました。最も奇妙なことは、私のエラーが安定していないことです。ほぼ毎回、さまざまなエラーが発生しました。しかし、ほとんどは hpdf_streams.c に関連していました。
最近のログ ファイル:

C:\Libs\libharu-201301131604\libharu.a(hpdf_streams.o):hpdf_streams.c:(.text+0xd4a): undefined reference to `deflateInit_'
C:\Libs\libharu-201301131604\libharu.a(hpdf_streams.o):hpdf_streams.c:(.text+0xdfa): undefined reference to `deflate'
C:\Libs\libharu-201301131604\libharu.a(hpdf_streams.o):hpdf_streams.c:(.text+0xe78): undefined reference to `deflateEnd'
C:\Libs\libharu-201301131604\libharu.a(hpdf_streams.o):hpdf_streams.c:(.text+0xee2): undefined reference to `deflate'
C:\Libs\libharu-201301131604\libharu.a(hpdf_streams.o):hpdf_streams.c:(.text+0xf7e): undefined reference to `deflateEnd'
C:\Libs\libharu-201301131604\libharu.a(hpdf_streams.o):hpdf_streams.c:(.text+0xfb7): undefined reference to `deflateEnd'
C:\Libs\libharu-201301131604\libharu.a(hpdf_streams.o):hpdf_streams.c:(.text+0xff1): undefined reference to `deflateEnd'
4

1 に答える 1

0

この問題が発生しました。WIN_API をオフにして zlib を再コンパイルする必要があります。または、スタティック ライブラリではなく dll を使用します。

于 2013-02-06T19:49:20.790 に答える