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

            隨筆分類

            隨筆檔案

            常用鏈接

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            久久人人爽人人澡人人高潮AV| 人妻无码αv中文字幕久久琪琪布| 久久人人爽人人爽人人爽| 国内高清久久久久久| 久久免费精品一区二区| 午夜视频久久久久一区| 久久久久综合网久久| 久久亚洲av无码精品浪潮| 久久精品国产精品亚洲精品| 国产成人久久精品一区二区三区| 久久最新免费视频| 久久久久久久久久久久中文字幕 | 丰满少妇人妻久久久久久| 久久亚洲国产精品一区二区| 日韩久久无码免费毛片软件| 久久综合香蕉国产蜜臀AV| AV无码久久久久不卡蜜桃| 91久久精品国产成人久久| 国产精品久久久久jk制服| 欧美与黑人午夜性猛交久久久 | 中文字幕久久久久人妻| 中文精品久久久久国产网址| 一个色综合久久| 四虎久久影院| 97超级碰碰碰碰久久久久| 亚洲欧美日韩中文久久| 无码精品久久久天天影视| 久久影视国产亚洲| 66精品综合久久久久久久| 久久夜色精品国产噜噜亚洲AV| 三级韩国一区久久二区综合| 一本一道久久精品综合| 曰曰摸天天摸人人看久久久| 久久精品国产福利国产秒| 四虎国产永久免费久久| 99久久777色| 久久精品国产亚洲av瑜伽| 亚洲国产高清精品线久久 | 72种姿势欧美久久久久大黄蕉| 久久伊人精品一区二区三区| 久久久噜噜噜久久中文字幕色伊伊 |