• <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
            // * 轉載請注明來源:http://www.shnenglu.com/zyzx

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

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

            ????????? 官方網站:http://www.wxwidgets.org/
            ????????? Wiki:http://wiki.wxwidgets.org/Main_Page

            二、VS + Win32 環境編譯

            目標庫版本: 2.8.7

            編譯平臺: WinXP + VS2005

            編譯類型:動態庫 + Unicode + Debug

            編譯目標平臺: Win32

            1 、打開工程 wxWidgets-2.8.7\build\msw\wx_dll.dsw ,將其轉換為 vs2005 工程關閉保存,再打開工程 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 工程并不完善,出現編譯錯誤忽略即可。

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

            編譯預定義環境

            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

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

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

            三、VS +
            WinCE環境編譯

            目標庫版本:2.8.7

            編譯平臺:WinXP + VS2005

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

            編譯目標平臺:WinCE4.0以上

            1、打開工程wxWidgets-2.8.7\build\wince\ wx.vcw。這個工程是evc的工程,先將其轉換為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


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

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

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


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

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

            評論

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

            你好,向您請教個問題,關于wxWidget的,
            我下載了wxWidget 2.8.9準備在wince下使用,但在wince下無法編譯
            我打開了build\wince\下的wx.dcw進行編譯,但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' 不是內部或外部命令,也不是可運行的程序
            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 : 未能打開生成日志進行寫入。
            1>請確保該文件未被其他進程打開并且未被寫保護。
            2>xmltok.c
            1>Creating ..\..\lib\evc_armv4_lib\winced\wx\msw\rcdefs.h
            1>'clarm.exe' 不是內部或外部命令,也不是可運行的程序
            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 個警告

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

            # 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' 不是內部或外部命令,也不是可運行的程序
            6>或批處理文件。
            6>Project : error PRJ0019: 某個工具從以下位置返回了錯誤代

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

            謝謝 回饋。  回復  更多評論   

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

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

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

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

            # 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端做開發,最好不要使用過多的高級庫特性。和Win32端比,還是有很多差距。  回復  更多評論   

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

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

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

            非常期待答疑  回復  更多評論   

            # 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>已復制 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 : 未找到下列環境變量:
            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 個 ==========

              回復  更多評論   

            導航

            統計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            常用鏈接

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            日本强好片久久久久久AAA| 久久久亚洲欧洲日产国码aⅴ | 久久亚洲国产中v天仙www| 精品精品国产自在久久高清| 伊人久久精品线影院| 欧美精品丝袜久久久中文字幕| 国产毛片欧美毛片久久久 | 久久精品国产WWW456C0M| 色综合久久久久综合99| 精品久久久久久国产潘金莲| 久久国产成人午夜aⅴ影院 | 国产激情久久久久影院| 99久久99久久精品国产片果冻| 国产精品青草久久久久婷婷 | 久久亚洲精品无码VA大香大香 | 久久综合精品国产一区二区三区| 久久精品国产亚洲AV忘忧草18| 欧美777精品久久久久网| 日韩欧美亚洲综合久久| 色偷偷888欧美精品久久久| 伊人久久大香线蕉综合Av| 亚洲国产日韩欧美久久| 91久久国产视频| 国产精品久久毛片完整版| 99精品久久久久久久婷婷| 久久青青草视频| 亚洲日韩欧美一区久久久久我| 国产亚洲成人久久| 狠狠色综合久久久久尤物| 色综合久久最新中文字幕| 国内精品久久久久影院免费| 亚洲AV无一区二区三区久久| yy6080久久| 欧美精品乱码99久久蜜桃| 久久亚洲精品成人无码网站| 亚洲精品无码久久久| 亚洲国产日韩欧美久久| 少妇熟女久久综合网色欲| 久久久精品国产免大香伊| 久久久久亚洲AV成人网人人网站 | 久久久这里只有精品加勒比|