• <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

            他強由他強,清風拂山崗;他橫由他橫,明月照大江。他自狠來他自惡,我自一口真氣足

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              20 隨筆 :: 47 文章 :: 22 評論 :: 0 Trackbacks
            今年4月zlib發布了1.2.5版,修正了幾個bug,增加了新功能(目前我還用不上).
            最近準備在自己的程序中用這個版本。結果怎么也編譯通不過。折騰了我一整天才搞定,發現是兩個小的設置沒有弄好。哎。。。
            新的1.2.5版本只提供了vc9、vc10兩個project配置文件.我用項目版本轉換文件怎么也不能轉到vc7.1下。沒辦法只好裝了一個vc2008重新編譯。
            把zlib 1.2.5加入自己的項目,編譯時有兩點要注意
            1.就是zlib 1.2.5源代碼包中\contrib\vstudio\readme.txt中說的在使用zlib要預定義宏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的設置要統一。否則也會出現鏈接錯誤,提示找不到_compress外部變量。

            后記(2011-6-19)
            我的編程環境已升級VS2008,又想在項目中使用ASM版本的ZLIB,重新從zlib.net下載后,直接使用zlib-1.2.5\contrib\vstudio\vc9下的zlibvc項目文件編譯出錯。發現是zlib-1.2.5\contrib\masmx86下的OBJ文件沒有生成。進入VS2008命令行環境,運行bld_ml32.bat生成兩個obj文件。重新在集成環境下編譯就沒問題了。但是如果是使用ZLIB的靜態庫版本,一定注意要將這兩個obj文件包含到最終的zlibvc.lib中去。否則在自己的應用項目中編譯時會提示如下錯誤。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設置正確。
            另外,如果使用命令行編譯進入zlib-1.2.5\win32目錄運行下面的命令就可以了。
            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 胡雨田 閱讀(6713) 評論(4)  編輯 收藏 引用

            評論

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

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

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

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

            亚洲va中文字幕无码久久| 亚洲中文字幕伊人久久无码 | 国产亚洲色婷婷久久99精品| 免费久久人人爽人人爽av| 亚洲国产欧洲综合997久久| 久久精品国产91久久麻豆自制| 久久国产三级无码一区二区| 国产亚洲精品久久久久秋霞| 久久精品成人免费网站| 久久只有这里有精品4| 久久成人影院精品777| 亚洲一级Av无码毛片久久精品| 久久人人爽人人爽人人AV| 久久精品国产欧美日韩| 久久久久亚洲精品天堂| 亚洲人成无码网站久久99热国产| 久久久久人妻一区精品性色av| 久久国产三级无码一区二区 | 久久精品无码午夜福利理论片| 国产精品欧美久久久久天天影视| 亚洲国产精品久久久天堂| 亚洲国产天堂久久久久久| 777久久精品一区二区三区无码 | 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 狠狠色婷婷久久一区二区| 久久免费国产精品| 成人精品一区二区久久久| 久久成人国产精品二三区| 久久久久久亚洲Av无码精品专口| 91麻豆国产精品91久久久| 亚洲天堂久久久| 伊人久久成人成综合网222| 久久人人超碰精品CAOPOREN| 国产精品va久久久久久久| 成人国内精品久久久久影院VR | 中文字幕无码av激情不卡久久| 国产成人精品综合久久久| 国产69精品久久久久99| 久久精品国产69国产精品亚洲| 久久96国产精品久久久| 草草久久久无码国产专区|