• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            huyutian

            他強(qiáng)由他強(qiáng),清風(fēng)拂山崗;他橫由他橫,明月照大江。他自狠來他自惡,我自一口真氣足

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              20 隨筆 :: 47 文章 :: 22 評論 :: 0 Trackbacks
            今年4月zlib發(fā)布了1.2.5版,修正了幾個bug,增加了新功能(目前我還用不上).
            最近準(zhǔn)備在自己的程序中用這個版本。結(jié)果怎么也編譯通不過。折騰了我一整天才搞定,發(fā)現(xiàn)是兩個小的設(shè)置沒有弄好。哎。。。
            新的1.2.5版本只提供了vc9、vc10兩個project配置文件.我用項目版本轉(zhuǎn)換文件怎么也不能轉(zhuǎn)到vc7.1下。沒辦法只好裝了一個vc2008重新編譯。
            把zlib 1.2.5加入自己的項目,編譯時有兩點(diǎn)要注意
            1.就是zlib 1.2.5源代碼包中\(zhòng)contrib\vstudio\readme.txt中說的在使用zlib要預(yù)定義宏ZLIB_WINAPI,否則無法編譯通過。
            - To use zlibwapi.dll in your application, you must define the  macro ZLIB_WINAPI when compiling your application's source files.
            2.鏈接時,除了#pragma comment(lib, "zlibvc.lib")添加引入庫外,還要注意Character Set的設(shè)置要統(tǒng)一。否則也會出現(xiàn)鏈接錯誤,提示找不到_compress外部變量。

            后記(2011-6-19)
            我的編程環(huán)境已升級VS2008,又想在項目中使用ASM版本的ZLIB,重新從zlib.net下載后,直接使用zlib-1.2.5\contrib\vstudio\vc9下的zlibvc項目文件編譯出錯。發(fā)現(xiàn)是zlib-1.2.5\contrib\masmx86下的OBJ文件沒有生成。進(jìn)入VS2008命令行環(huán)境,運(yùn)行bld_ml32.bat生成兩個obj文件。重新在集成環(huán)境下編譯就沒問題了。但是如果是使用ZLIB的靜態(tài)庫版本,一定注意要將這兩個obj文件包含到最終的zlibvc.lib中去。否則在自己的應(yīng)用項目中編譯時會提示如下錯誤。1>zlibr.lib(inflate.obj) : error LNK2001: unresolved external symbol _inflate_fast
            1>zlibr.lib(deflate.obj) : error LNK2001: unresolved external symbol _longest_match
            1>zlibr.lib(deflate.obj) : error LNK2001: unresolved external symbol _match_init
            把兩個obj文件包含到zlibvc.lib的方法是,Project->Property->Librarian->Additional Dependencies 加入inffas32.obj match686.obj,同時Additional Library Directories設(shè)置正確。
            另外,如果使用命令行編譯進(jìn)入zlib-1.2.5\win32目錄運(yùn)行下面的命令就可以了。
            nmake -f win32/Makefile.msc LOC="-DASMV -DASMINF" OBJA="inffas32.obj match686.obj"               (use ASM code, x86)
            nmake -f win32/Makefile.msc AS=ml64 LOC="-DASMV -DASMINF"  OBJA="inffasx64.obj gvmat64.obj inffas8664.c"  (use ASM code, x64)
            posted on 2010-07-24 17:41 胡雨田 閱讀(6727) 評論(4)  編輯 收藏 引用

            評論

            # re: 編譯Zlib 1.2.5遇到的問題 2010-08-07 00:51
            提示找不到_compress外部變量。 預(yù)定義宏ZLIB_WINAPI后無此提示  回復(fù)  更多評論
              

            # re: 編譯Zlib 1.2.5遇到的問題 2011-03-22 09:29 訪客
            在目錄old中有VC6的dsp和dsw,編譯沒問題  回復(fù)  更多評論
              

            # re: 編譯Zlib 1.2.5遇到的問題 2015-04-22 15:30 quisty
            @式
            加上預(yù)定義宏ZLIB_WINAPI后又產(chǎn)生別的錯誤,
            error link2005 _CrtSetCheckCount 已經(jīng)在MSVCRTD.lib(MSVCR100D.dll) 中定義。。。。等等,好多行。  回復(fù)  更多評論
              

            # re: 編譯Zlib 1.2.5遇到的問題 2016-02-04 22:32 Nightingale
            在lgnore libraries輸入MSVCRT(這個默認(rèn)庫和zlib庫會有沖突)  回復(fù)  更多評論
              


            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            国内精品伊人久久久久777| 91精品国产色综久久| 一级做a爰片久久毛片毛片| 久久久精品人妻一区二区三区蜜桃| 久久夜色精品国产亚洲| 久久天天躁狠狠躁夜夜avapp| 久久99精品国产一区二区三区| 久久精品成人免费观看97| 中文字幕人妻色偷偷久久| 久久伊人精品青青草原高清| 少妇人妻综合久久中文字幕| 国产精品久久久久久久久免费| 伊人色综合九久久天天蜜桃| 91精品国产乱码久久久久久| 久久综合亚洲鲁鲁五月天| 亚洲成色999久久网站| 无码人妻少妇久久中文字幕蜜桃| 99久久无码一区人妻| 国产亚洲综合久久系列| 一级a性色生活片久久无少妇一级婬片免费放 | 久久狠狠爱亚洲综合影院 | 成人综合久久精品色婷婷| 青青国产成人久久91网| 亚洲精品乱码久久久久久久久久久久 | 91久久成人免费| 97超级碰碰碰久久久久| 无码AV中文字幕久久专区| 亚洲精品99久久久久中文字幕| 四虎国产精品免费久久久| 久久精品国产亚洲av水果派| 午夜精品久久久久久久久| 亚洲午夜久久久影院伊人| 一本色道久久综合| 久久久久久久国产免费看| 亚洲国产天堂久久综合网站| 久久99国产精品99久久| av无码久久久久不卡免费网站| 久久一日本道色综合久久| 青草国产精品久久久久久| 久久午夜羞羞影院免费观看| 亚洲欧美日韩中文久久|