1. 程式人生 > >vc2008/vc2015 和 Mac 編譯 zlib-1.2.8

vc2008/vc2015 和 Mac 編譯 zlib-1.2.8

*** vc2008 編譯 zlib-1.2.8
使用 vc2008 開啟 \zlib-1.2.8\contrib\vstudio\vc9\zlibvc.sln
編譯 zlibstat 靜態庫

(如果編譯錯誤,參照vc2015修改)

Release沒有找到match686.obj問題。

解決方法:

進入VS2008命令列環境,執行bld_ml32.bat生成兩個obj檔案。

在vs2008的IDE中,進入命令列,執行bld_ml32.bat,就會生成相應的match686.obj檔案,重新編譯zlib工程就可以編譯成功了。


*** vc2015 編譯 zlib-1.2.8
複製 \zlib-1.2.8\contrib\vstudio\vc11 整個目錄為 vc14
使用 vc2015 開啟 vc14/zlibvc.sln
編譯 zlibstat 靜態庫
編譯 zlibvc 動態庫有二個地方需要修改
1.error LNK2026: module unsafe for SAFESEH image
修改 zlibvc 工程屬性 /linker/Advenced/Image has safe Exception Handles 為 No
2.fatal error LNK1118: syntax error in ‘VERSION’ statement
開啟 zlibvc.def 檔案 VERSION 修改為 1.28


*** mac 編譯 zlib-1.2.8.tar.gz:
chmod +x configure
./configure [--shared]
sudo make
sudo make install