libharu(1) windows下編譯方法

2021-06-25 16:33:56 字數 1848 閱讀 6532

先給出我當前收集的有用鏈結。

// libharu在git的位址

// libharu的編譯方法

/wiki/installation

// libharu--將2個png儲存為pdf

// libharu和pdflib 兩種寫pdf庫檔案使用心得

// 常見pdf開發庫的討論帖子

1. zlib資料夾,libpng資料夾,lib資料夾,libharu資料夾

進入libharu資料夾,在vs2010的命令列下執行: nmake script/makefile.msvc_dll

錯誤1:hpdf_streams.c

src\hpdf_streams.c(34) : fatal error c1083: cannot open include file: 'zlib.h':

no such file or directory

辦法:將makefile.msvc_dll裡面的「cflags=/md -nologo -o2 -iinclude -iwin32\include   -i"$(png_prefix)"\include -i"$(zlib_prefix)"\include -dhpdf_dll_make"修改為」cflags=/md -nologo -o2 -iinclude -iwin32\include   -i"$(png_prefix)" -i"$(zlib_prefix)" -dhpdf_dll_make「

然後再執行nmake script/makefile.msvc_dll

錯誤2:link : fatal error lnk1181: cannot open input file 'libpng13.lib'

辦法:將makefile.msvc_dll裡面的ldflags= /libpath:$(png_prefix)\lib /libpath:$(zlib_prefix)\lib /libpath:win32\msvc libpng13.lib zlib.lib改為」ldflags= /libpath:$(png_prefix)\lib /libpath:$(zlib_prefix)\lib /libpath:win32\msvc libpngd.lib zlibd.lib「

因為我們編譯的是debug版本,這裡的2個lib為debug版本的。

所以還要將」cflags_demo=/md -nologo -o2 -iinclude -iwin32\include -d__win32__ -dhpdf_dll「改為」cflags_demo=/md -nologo -o2 -iinclude -iwin32\include -d__win32__ -dhpdf_dll -dlibhpdf_debug「

同時開啟libharu\win32\include\hpdf_config.h檔案,將裡面的#undef libhpdf_debug注釋起來.

另外將libpngd.lib和zlibd.lib拷貝到libharu\win32\msvc下面

然後再執行nmake script/makefile.msvc_dll

錯誤3:libhpdf.def : error lnk2001: unresolved external symbol hpdf_3dannot_set3dview

將libharu\win32\msvc\libhpdf.def裡面的hpdf_3dannot_set3dview刪除。

然後再執行nmake script/makefile.msvc_dll

這樣會在libharu下面生成libhpdfd.dll和libhpdfd.lib

編譯release就簡單多了,不需要考慮*d.lib, *d.dll等問題。

Windows訊息機制 1

dos的過程驅動與windows的事件驅動 在講本程式的訊息迴圈之前,我想先談一下dos與windows驅動機制的區別 dos程式主要使用順序的,過程驅動的程式設計方法。順序的,過程驅動的程式有乙個明顯的開始,明顯的過程及乙個明顯的結束,因此程式能直接控制程式事件或過程的順序。雖然在順序的過程驅動的...

windows驅動入門 1

1.搭建編譯環境 1 安裝編譯器 vc6.0或vc2003 vc2005等。2 安裝驅動開發工具包ddk driver development kits 下找到你要的目標平台。注意 這裡的版本指的是將要執行你編譯的驅動的機器作業系統版本,與你自己現在執行作業系統版本無關。2.編寫第乙個驅動 hell...

windows記憶體結構 1

作業系統使用的記憶體結構是理解作業系統如何執行的重要關鍵 建立程序時,系統會賦予程序4gb的虛擬空間位址 32位 16eb的虛擬空間 64位 32位從0x00000000 0xffffffff,64位從0x0000000000000000 0xffffffffffffffff 需要注意的是虛擬兩個字...