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

            zyzx的小窩

            C/C++,GUI,個人移動存儲,zyzx_lsl@163.com

             

            wxWidgets編譯簡介

            // * create by zyzx
            // * 2009-3-11
            // * 轉(zhuǎn)載請注明來源:http://www.shnenglu.com/zyzx

            ???????? 使用wxWidgets庫已經(jīng)有一年多了,很多時候想寫點回憶性質(zhì)的東西來,以備今后工作學(xué)習(xí)中參考。但每次下筆后卻又因為總總原因,中斷或是零碎的事情卻又沒再抬起過筆。雖然我目前接觸了解wxWidgets時間不長,今后的工作中還不一定能夠用到她,寫東西也需要花費大量的精力,但我盡可能的將我所知道的表述出來,留給需要的人,減少入門花費的時間。

            一、
            wx庫簡介
            ????????? 跨平臺GUI庫,其他的不說了。Google一下,看看是不是你所需要的。

            ????????? 官方網(wǎng)站:http://www.wxwidgets.org/
            ????????? Wiki:http://wiki.wxwidgets.org/Main_Page

            二、VS + Win32 環(huán)境編譯

            目標(biāo)庫版本: 2.8.7

            編譯平臺: WinXP + VS2005

            編譯類型:動態(tài)庫 + Unicode + Debug

            編譯目標(biāo)平臺: Win32

            1 、打開工程 wxWidgets-2.8.7\build\msw\wx_dll.dsw ,將其轉(zhuǎn)換為 vs2005 工程關(guān)閉保存,再打開工程 wx_dll.sln

            2 、將解決方案配置更換為 DLL Unicode Debug

            3 、依次單獨編譯 wxregex wxzlib wxexpat wxtiff base wxjpeg wxpng core odbc xml adv html net gl dbgrid qa richtext aui xrc media 庫。

            其中目前版本 odbc gl dbgrid 工程并不完善,出現(xiàn)編譯錯誤忽略即可。

            4 、如果以上順利通過,那么將得到以下我們需要的庫文件

            編譯預(yù)定義環(huán)境

            wxWidgets-2.8.7\lib\vc_dll\mswud\wx\ setup.h
            wxWidgets-2.8.7\lib\vc_dll\mswud\wx\msw\ rcdefs.h

            wxWidgets-2.8.7\lib\vc_dll\wxbase28ud_net_vc_custom.dll
            wxWidgets-2.8.7\lib\vc_dll\wxbase28ud_odbc_vc_custom.dll
            wxWidgets-2.8.7\lib\vc_dll\wxbase28ud_vc_vc_custom.dll
            wxWidgets-2.8.7\lib\vc_dll\wxbase28ud_xml_vc_custom.dll
            wxWidgets-2.8.7\lib\vc_dll\wxmsw28ud_adv_vc_custom.dll
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_aui_vc_custom.dll
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_core_vc_custom.dll
            wxWidgets-2.8.7\lib\vc_dll\wxmsw28ud_gl_vc_custom.dll
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_html_vc_custom.dll
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_media_vc_custom.dll
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_qa_vc_custom.dll
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_richtext_vc_custom.dll
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_xrc_vc_custom.dll

            wxWidgets-2.8.7\lib\vc_dll\wxbase28ud.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxbase28ud_net.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxbase28ud_xml.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxexpatd.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxjpegd.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_adv.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_aui.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_core.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_html.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_media.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_qa.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_richtext.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxmsw28ud_xrc.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxpngd.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxregexud.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxtiffd.lib
            w
            xWidgets-2.8.7\lib\vc_dll\wxzlibd.lib

            注意:將以上文件按照文件按照原目錄相對結(jié)構(gòu)拷貝到要制作的庫路徑下,并將 wxWidgets-2.8.7\ include 目錄也拷貝到其目錄下,以后要使用只需要包含這些路徑即可。

            ???????????
            ??????????為了以后開發(fā)方便,設(shè)定的開發(fā)庫路徑為:
            ????????? wxLib\include
            ????????? wxLib\Debug\mswud\wx\msw
            ????????? wxLib\Debug

            三、VS +
            WinCE環(huán)境編譯

            目標(biāo)庫版本:2.8.7

            編譯平臺:WinXP + VS2005

            編譯類型:靜態(tài)庫 + Unicode + Debug + Pocket PC 2003(ARM4)

            編譯目標(biāo)平臺:WinCE4.0以上

            1、打開工程wxWidgets-2.8.7\build\wince\ wx.vcw。這個工程是evc的工程,先將其轉(zhuǎn)換為vs2005的工程wx.sln。

            2、打開wxWidgets-2.8.7\include\wx\minifram.h文件,在最后一個endif之前加上

            //** ADD 修正wince端無法通過編譯

            #ifdef _WIN32_WCE

            #include "wx/frame.h"

            typedef wxFrame wxMiniFrame;

            #endif

            3、依次編譯wxzlib、wxpng、wxjpeg、wxexpat、gl、mono。直接編譯會有些許小問題,請看1、2樓回帖。

            如果有編譯事件錯誤,重新編譯一次即可。

            4、如果通過以上編譯可得到如下我們需要的庫文件

            wxWidgets-2.8.7\lib\evc_armv4_lib\winced\wx\ setup.h
            wxWidgets-2.8.7\lib\evc_armv4_lib\winced\wx\msw\ rcdefs.h
            wxWidgets-2.8.7\build\wince\Pocket PC 2003 (ARMV4)\Debug\wx_wxzlib.lib
            wxWidgets-2.8.7\build\wince\Pocket PC 2003 (ARMV4)\Debug\ wx_wxpng.lib
            wxWidgets-2.8.7\build\wince\Pocket PC 2003 (ARMV4)\Debug\ wx_wxjpeg.lib
            wxWidgets-2.8.7\build\wince\Pocket PC 2003 (ARMV4)\Debug\ wx_wxexpat.lib
            wxWidgets-2.8.7\build\wince\Pocket PC 2003 (ARMV4)\Debug\ wx_gl.lib
            wxWidgets-2.8.7\build\wince\Pocket PC 2003 (ARMV4)\Debug\ wx_mono.lib


            注意:將以上文件按照文件按照原目錄相對結(jié)構(gòu)拷貝到要制作的庫路徑下,并將

            wxWidgets-2.8.7\ include 目錄也拷貝到其目錄下,以后要使用只需要包含這些路徑即可。

            ??????????為了以后開發(fā)方便,設(shè)定的開發(fā)庫路徑為:
            ????????? wxCELib\include
            ????????? wxCELib\Debug\winced\wx\msw
            ????????? wxCELib\Debug


            ??????以上是在VS的編譯環(huán)境,我也嘗試過在Eclipse+GCC+WIN32環(huán)境下編譯通過。由于工作生活中只接觸到WIN32和WINCE環(huán)境,因此關(guān)于wx庫只能做這兩種環(huán)境的描述。

            posted on 2009-03-11 15:29 zyzx 閱讀(10049) 評論(7)  編輯 收藏 引用 所屬分類: wxWidgets界面庫

            評論

            # re: wxWidgets編譯簡介 2009-03-17 10:31 一燈

            你好,向您請教個問題,關(guān)于wxWidget的,
            我下載了wxWidget 2.8.9準(zhǔn)備在wince下使用,但在wince下無法編譯
            我打開了build\wince\下的wx.dcw進(jìn)行編譯,但wxzli、wxpng、wxjpeg、wxepat都能通過,但mono和gl無法通過,問題如下:


            6>------ 已啟動全部重新生成: 項目: gl, 配置: Debug Pocket PC 2003 (ARMV4) ------
            6>正在刪除項目“gl”(配置“Debug|Pocket PC 2003 (ARMV4)”)的中間文件和輸出文件
            6>Creating ..\..\lib\evc_armv4_lib\winced\wx\msw\rcdefs.h
            4>pngpread.c
            6>'clarm.exe' 不是內(nèi)部或外部命令,也不是可運行的程序
            6>或批處理文件。
            6>Project : error PRJ0019: 某個工具從以下位置返回了錯誤代碼: "Creating ..\..\lib\evc_armv4_lib\winced\wx\msw\rcdefs.h"
            6>生成日志保存在“file://D:\wxWidgets-2.8.9\build\wince\Pocket PC 2003 (ARMV4)\Debug\BuildLog.htm”
            6>gl - 1 個錯誤,0 個警告

            1>------ 已啟動全部重新生成: 項目: mono, 配置: Debug Pocket PC 2003 (ARMV4) ------
            2>------ 已啟動全部重新生成: 項目: wxexpat, 配置: Debug Pocket PC 2003 (ARMV4) ------
            1>正在刪除項目“mono”(配置“Debug|Pocket PC 2003 (ARMV4)”)的中間文件和輸出文件
            2>正在刪除項目“wxexpat”(配置“Debug|Pocket PC 2003 (ARMV4)”)的中間文件和輸出文件
            2>正在編譯...
            2>xmlparse.c
            1>mono : warning PRJ0009 : 未能打開生成日志進(jìn)行寫入。
            1>請確保該文件未被其他進(jìn)程打開并且未被寫保護(hù)。
            2>xmltok.c
            1>Creating ..\..\lib\evc_armv4_lib\winced\wx\msw\rcdefs.h
            1>'clarm.exe' 不是內(nèi)部或外部命令,也不是可運行的程序
            1>或批處理文件。
            1>Project : error PRJ0019: 某個工具從以下位置返回了錯誤代碼: "Creating ..\..\lib\evc_armv4_lib\winced\wx\msw\rcdefs.h"
            1>生成日志保存在“file://D:\wxWidgets-2.8.9\build\wince\Pocket PC 2003 (ARMV4)\Debug\BuildLog.htm”
            1>mono - 1 個錯誤,1 個警告

            我以為是生成順序的問題,但改變順序后依然沒有解決
            我改變了關(guān)于預(yù)編譯的設(shè)置 依然沒有解決問題,
            我是個新手,關(guān)于C語言編譯實在沒有經(jīng)驗,希望能給予指教謝謝
              回復(fù)  更多評論   

            # re: wxWidgets編譯簡介 2009-03-17 13:30 zyzx

            @一燈

            6>Creating ..\..\lib\evc_armv4_lib\winced\wx\msw\rcdefs.h
            4>pngpread.c
            6>'clarm.exe' 不是內(nèi)部或外部命令,也不是可運行的程序
            6>或批處理文件。
            6>Project : error PRJ0019: 某個工具從以下位置返回了錯誤代

            是正常的提示,那份從wx.dcw轉(zhuǎn)換而來的工程文件,可能由于某些生成事件,對于VS后期版本不支持或是其他變更而產(chǎn)生的。(個人揣測)
            使用 右鍵-》僅用于項目-》僅生成XXXX ,依次單獨編譯wxzlib、wxpng、wxjpeg、wxepat、gl、mono。
            在第一次編譯gl時,會有上面的提示。忽略,使用上面操作再次單獨嘗試編譯gl,即可通過。這個操作生成setup.h、rcdefs.h兩個文件。

            謝謝 回饋。  回復(fù)  更多評論   

            # re: wxWidgets編譯簡介 2009-03-17 15:10 一燈

            我試試了下,確實如此,應(yīng)該使用生成解決方案,而不是重新生成解決這樣就沒問題了  回復(fù)  更多評論   

            # re: wxWidgets編譯簡介 2009-03-17 15:15 一燈

            還有一個問題是 FNERR_INVALIDFILENAME 沒有定義,我補了個#define FNERR_INVALIDFILENAME 0x3002就通過 了,這是在CdErr.h中定義的,  回復(fù)  更多評論   

            # re: wxWidgets編譯簡介 2009-03-17 16:16 zyzx

            @一燈

            wxWidgets-2.8.7中并沒有定義宏FNERR_INVALIDFILENAME ,我沒有碰到這個問題。
            國外有人碰到過:http://www.nabble.com/WinCE---2.8.9-td19491972.html,或許有幫助。

            另外,在CE端做開發(fā),最好不要使用過多的高級庫特性。和Win32端比,還是有很多差距。  回復(fù)  更多評論   

            # re: wxWidgets編譯簡介[未登錄] 2014-06-10 17:58 劉偉

            編譯過wxWidgets的x64版本嗎?nmake /f makefile.vc SHARED=0 UNICODE=1 BUILD=debug TARGET_CPU=X64我是這么編譯的,但是在使用的時候卻出現(xiàn)了一個問題。我建立了一個x64的工程,準(zhǔn)備使用剛編譯好的靜態(tài)庫,在鏈接的時候提示我
            wxbase29ud.lib(baselib_intl.obj) : fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'

            難道我編譯的wxWidget庫不是x64的?該如何確定呢?

            非常期待答疑  回復(fù)  更多評論   

            # re: wxWidgets編譯簡介 2015-04-04 11:12 murrayyang

            1>------ 已啟動全部重新生成: 項目: mono, 配置: Debug CHSINT SDK For WinCE 6.0 (ARMV4I) ------
            1>------ 已啟動生成: 項目: mono, 配置: Debug CHSINT SDK For WinCE 6.0 (ARMV4I) ------
            1>Creating ..\..\lib\evc_armv4t_lib\winced\wx\setup.h
            1>已復(fù)制 1 個文件。
            1>正在編譯...
            1>dummy.cpp
            1>C:\Users\Administrator\Desktop\wxWidgets-2.8.12\wxWidgets-2.8.12\include\wx/msw/wince/libraries.h(54) : fatal error C1189: #error : "Unknown SDK, please fill-in missing pieces"
            1>項目 : warning PRJ0018 : 未找到下列環(huán)境變量:
            1>$(CePlatform)
            1>生成日志保存在“file://C:\Users\Administrator\Desktop\wxWidgets-2.8.12\wxWidgets-2.8.12\build\wince\CHSINT SDK For WinCE 6.0 (ARMV4I)\Debug\BuildLog.htm”
            1>mono - 1 個錯誤,0 個警告
            ========== 生成: 成功 0 個,失敗 1 個,最新 0 個,跳過 0 個 ==========

              回復(fù)  更多評論   

            導(dǎo)航

            統(tǒng)計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            常用鏈接

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            99久久精品国产一区二区 | 亚洲一区中文字幕久久| 九九精品久久久久久噜噜| 99久久无码一区人妻| www.久久精品| 久久精品国产免费| 18岁日韩内射颜射午夜久久成人| 2020久久精品国产免费| 国产一级持黄大片99久久| 久久久久国产精品熟女影院| 久久99国产精品尤物| 久久99中文字幕久久| 久久99热这里只有精品国产| 国产三级观看久久| 久久中文精品无码中文字幕| 无码八A片人妻少妇久久| 伊人久久大香线蕉av一区| 亚洲国产精品无码久久一线| 久久久久高潮毛片免费全部播放 | 日韩久久无码免费毛片软件| 美女久久久久久| 精产国品久久一二三产区区别| 久久亚洲AV成人无码国产| 青青草原综合久久大伊人精品| 久久93精品国产91久久综合| 久久天天躁狠狠躁夜夜2020一| 97久久超碰国产精品2021| 国产免费福利体检区久久| 中文字幕热久久久久久久| 国产精品成人99久久久久 | 国产精品无码久久久久久| 精品国产青草久久久久福利| 久久精品国产男包| 伊人久久精品线影院| 久久久久精品国产亚洲AV无码| 99久久精品费精品国产一区二区| 热综合一本伊人久久精品| 久久精品国产亚洲AV高清热| 久久综合成人网| 欧美日韩中文字幕久久伊人| 亚洲综合日韩久久成人AV|