vs2013編譯zlib1 2 8庫解決方案

2021-07-22 14:24:49 字數 1124 閱讀 6968

一、zlib庫的編譯

1. 首先開啟vs2013的command prompt (32bit),也就是命令提示視窗。

2. 進入到zlib-1.2.5/contrib/masmx86目錄,執行bld_ml32.bat。(同理,64位的電腦進入masmx64目錄,執行bld_ml64.bat)。這一步執行bld_ml32批處理檔案,裡面呼叫ml命令編譯inffas32.asm和match686.asm,生成inffas32.obj和match686.obj(生成在本目錄下)。這兩個檔案在zlibvc中用到。

3. zlib的vs sln解決方案檔案可以在如下路徑中找到:zlib-1.2.5/contrib/vstudio/vc11/zlibvc.sln,開啟

這個解決方案中包含6個工程。其中:

(1). zlibvc生成動態鏈結庫zlibwapi.dll和對應的導入庫zlibwapi.lib

(2). zlibstat生成靜態鏈結庫zlibstat.lib

(3). testzlibdll測試生成的動態鏈結庫zlibwapi.dll

(4). testzlib測試生成的靜態鏈結庫zlibstat.lib        

最後我們在debug模式下編譯整個解決方案。生成的dll和lib檔案可在相應的資料夾中找到。

下邊介紹如何使用編譯好的動態或是靜態庫。(假設專案工程已經建立完畢)

這裡我們把靜態庫zlibstat.lib和動態庫(zlibwapi.dll/zlibwapi.lib)以及zlib.h/zlibconf.h檔案放在乙個資料夾中。

a.先用vs2015命令列執行下bld_ml32.bat批處理

b.將inffas32.obj和match686.obj複製到壓縮目錄

c.開啟zlib-1.2.8\contrib\vstudio\vc11\zlibvc.sln編譯即可1.error lnk2026: module unsafe for safeseh image

修改屬性/linker/advenced/image has safe exception handles 為no

2.fatal error lnk1118: syntax error in 『version』 statement

開啟zlibvc.def檔案version 修改為1.28即可

windows上編譯zlib 1 2 8記錄

應需求變更需要。我們要將原先專案中zlib的功能,移植到新專案上。移植完成後,編譯,出現一大堆問題,如下所示 從上圖,可以看出。是定義的介面,找不到相應的lib庫導致的。為了解決這個問題,我從以下三次入手 1 檢視 是否移植完成。2 檢視屬性是否配置ok。主要檢查以下兩項 圖1 圖2 通過比對,屬性...

VS2012 zlib 1 2 8 編譯小記

1.開啟vs命令列工具 developer command prompt for vs2012 cd zlib 1.2.8 contrib masmx86 執行bld ml32.bat 編譯生成一些檔案 2.用vs2012開啟zlib 1.2.8 contrib vstudio vc11中的zlib...

Linux環境上zlib1 2 8安裝及配置

zlib是提供 資料壓縮 用的函式庫,由jean loup gailly與mark adler所開發,初版0.9版在1995年5月1日發表。zlib使用deflate演算法,最初是為libpng函式庫所寫的,後來普遍為許多軟體所使用。此函式庫為自由軟體,使用zlib授權。截至2007年3月,zlib...