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

            Welcome to ErranLi's Blog!

              C++博客 :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
              106 Posts :: 1 Stories :: 97 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(12)

            搜索

            •  

            積分與排名

            • 積分 - 177253
            • 排名 - 151

            最新評(píng)論

            閱讀排行榜

            Qt-WinCE安裝、開(kāi)發(fā)及部署全解

            penguinx ? 發(fā)表于: 2008-07-31

            管理提醒:
            本帖被 XChinux 從 Qt for Embedded Linux 移動(dòng)到本區(qū)(2010-02-07)
            Qt-WinCE 全解
            聲明: 花費(fèi)了三天時(shí)間,周轉(zhuǎn)各大網(wǎng)站,終于在今天將自己的第一個(gè) Qt 程序在“小 I(SAMSUNG i718+) ”上跑了起來(lái)!



            一、 Qt 嵌入式環(huán)境的搭建
            a)? ? ? ? 首先,下載 Qt 的嵌入式開(kāi)發(fā)包 qt-embedded-wince-opensource-src-4.4.0.zip

            b)? ? ? ? 然后,下載 VS2005

            c)? ? ? ? 最后,下載一個(gè)嵌入式開(kāi)發(fā)的 SDK ,如 Windows Mobile 5.0 Pocket PC SDK, 可以在微軟的官方網(wǎng)站上下載到!

            d)? ? ? ? 還有一個(gè)是同步的軟件 Microsoft ActiveSync4.5 中文簡(jiǎn)體版。

            ------------------------------------------ ---- ----------------------------------
            e)? ? ? ? 首先安裝 VS2005 ,很簡(jiǎn)單,按照向?qū)?lái),在自定義安裝中務(wù)必選擇“智能設(shè)備開(kāi)發(fā)”。

            f)? ? ? ? ? 關(guān)于 Microsoft ActiveSync4.5 的安裝更是“ straightforward ”。在此不再多說(shuō)!

            g)? ? ? ? 然后,安裝 Windows Mobile 或是其它版本的 SDK ,可以用自定義的 SDK! 簡(jiǎn)單

            h)? ? ? ? 比較麻煩的就是 qt-embedded-wince 的安裝。參照下面的步驟:①、解壓,將解壓后的文件夾放到一個(gè)不含空格的路徑中,如我的: f:\penguinx\qt_wince qt_wince 即為此文件夾。然后設(shè)置環(huán)境變量:右鍵“我的電腦”- > “屬性”- > 點(diǎn)“高級(jí)”標(biāo)簽- > “環(huán)境變量”選項(xiàng)- > "PATH" 中添加路徑“ f:\penguinx\qt_wince \ bin ”。 OK !②編譯前戲。首先,配置編譯選項(xiàng),進(jìn)行 VS2005 的命令行中,進(jìn)入解壓的文件夾,然后執(zhí)行如下: configure -platform win32-msvc2005 -xplatform wince50standard-armv4i-msvc2005 可以根據(jù)自己的板子及手機(jī)配置來(lái)選擇其它的嵌入式的 xplatfrom 。這個(gè)過(guò)程可能需要十幾分鐘。執(zhí)行完后,再次在 VS2005 中設(shè)置臨時(shí)的環(huán)境變量,編譯時(shí)要用到:如下:

            ? ? ? set INCLUDE=D:\Program Files\Microsoft Visual Studio 8\VC\ce\include;D:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Pocket PC SDK\Include\Armv4i



            ? ? ? set LIB=D:\Program Files\Microsoft Visual Studio 8\VC\ce\lib\armv4i;D:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Pocket PC SDK\Lib\ARMV4I



            ? ? ? set PATH=D:\Program Files\Microsoft Visual Studio 8\VC\ce\bin\x86_arm;%PATH%

            ? ? ? ? ? ? ? 在此我期望能根據(jù)自己的軟件安裝情況將上面的目錄“拿來(lái)主義”一下。設(shè) 置完后,執(zhí)行 nmake ,過(guò)兩、三個(gè)鐘頭后,你就可以 Enjoy your journey.
            最后,執(zhí)行nmake,安裝完畢!我的Qt-WinCE安裝在  f:\penguinx\qt_wince



            二、編譯Qt-WinCE程序
            命令行法 ( 不用 IDE)

            首先、用 VS2005 命令行進(jìn)入要編譯的程序目錄 ( 此目錄最好就在安裝目錄 f:\penguinx\qt_wince ) ,執(zhí)行 < f:\penguinx\qt_wince >bin\qmake.exe –project –o example.pro? 其中, Install Qt Path 為你的 Qt-WinCE 的安裝目錄。這個(gè)時(shí)候,可以產(chǎn)生 example.pro 文件。

            然后、就是產(chǎn)生 Makefile 的時(shí)候:在 VS2005 命令行下輸入:

            f:\penguinx\qt_wince\bin\qmake -spec ..\mkspecs\wince50standard-armv4i-msvc2005 -win32 -o Makefile example.pro 此時(shí),恭喜你, Makefile 文件已經(jīng)產(chǎn)生。

            ? ? ? 最后,就是用 nmake 來(lái)編譯和鏈接程序了。先將安裝時(shí)的環(huán)境變量 ( 三個(gè) set) 在當(dāng)前 VS2005 命令行下重新執(zhí)行一遍。否則會(huì)出現(xiàn)如下錯(cuò)誤:

            cl: 命令行 warning D9002 : 忽略未知選項(xiàng)“ -QRarch4T

            cl: 命令行 warning D9002 : 忽略未知選項(xiàng)“ -QRinterwork-return

            main.cpp

            mainwindow.cpp

            f:\penguinx\qt_wince\include\qtgui\../../src/gui/widgets/qmenu.h(144) : error C2

            146: 語(yǔ)法錯(cuò)誤 : 缺少“ ; ( 在標(biāo)識(shí)符“ wceMenu ”的前面 )

            f:\penguinx\qt_wince\include\qtgui\../../src/gui/widgets/qmenu.h(144) : error C4

            430: 缺少類型說(shuō)明符 - 假定為 int 。注意 : C++ 不支持默認(rèn) int

            f:\penguinx\qt_wince\include\qtgui\../../src/gui/widgets/qmenu.h(144) : error C4

            430: 缺少類型說(shuō)明符 - 假定為 int 。注意 : C++ 不支持默認(rèn) int

            f:\penguinx\qt_wince\include\qtgui\../../src/gui/widgets/qmenu.h(144) : warning

            C4183: wceMenu : 缺少返回類型;假定為返回“ int ”的成員函數(shù)。

            然后,執(zhí)行 nmake ,看著一行的白銀流失完后,就是金子 ( 你的 exe 文件 ) 了。

            注意:在執(zhí)行 nmake 的時(shí)候,可能會(huì)看到如下錯(cuò)誤信息:

            ? ? ? ? link /LIBPATH:"f:\penguinx\qt_wince\lib" /LIBPATH:"f:\penguinx\qt_wince\

            lib" /NOLOGO /NODEFAULTLIB:OLDNAMES.LIB /DEBUG /SUBSYSTEM:WINDOWSCE,5.00 /MACHIN

            E:THUMB /OUT:debug\node.exe @C:\DOCUME~1\User\LOCALS~1\Temp\nm6B3.tmp

            tmp\obj\debug_shared\main.obj : fatal error LNK1112: 模塊計(jì)算機(jī)類型“ X 86 與目標(biāo)

            計(jì)算機(jī)類型“ THUMB ”沖突

            NMAKE : fatal error U1077: “"D:\Program Files\Microsoft Visual Studio 8\VC\ce\b

            in\x86_arm\link.EXE" : 返回代碼“ 0x 458

            ? ? ? 這種錯(cuò)誤搞的我很無(wú)奈,我不執(zhí)行 nmake ,直接執(zhí)行 nmake release 就沒(méi)有這種錯(cuò)誤?這種錯(cuò)誤可能是因?yàn)椤碍h(huán)境變量”中“ PATH ”中設(shè)置了“ f:\penguinx\qt_wince\bin ”。在我把這個(gè)變量去掉后,重新打開(kāi) VS2005 命令行 ( 因?yàn)榈弥匦伦x取 PATH 變量 ) 。然后按照上面的步驟做下來(lái),最后用 nmake 重新執(zhí)行一遍,很好很流暢!

            三、 Qt –WinCE 程序的部署(非打包)
            ? ? ? 可以直接把上面開(kāi)發(fā)的 *.exe 文件和其需要的 *.dll 一起 CP 到一個(gè)目錄中,這些 dll 一般有:

            D:\Program Files\Microsoft Visual Studio 8\VC\ce\Dll\armv4i\ msvcr80.dll

            F:\penguinx\wince_vs2005\lib\ QtCore4.dll

            F:\penguinx\wince_vs2005\lib\QtGui4.dll

            其它的根據(jù)自己項(xiàng)目的需要 CP 下,就行了。

            ? ? ? 如果想將程序部署成 *.cab 形式的,在上面的“解決方案”中,點(diǎn)“文件”- > “新建”- > “項(xiàng)目”- > 點(diǎn)“其它”,其中有關(guān)于智能設(shè)備部署的,就它了 ( 我在實(shí)驗(yàn)室機(jī)子上開(kāi)發(fā)的,回來(lái)寫手記,所以具體的操作記的不是非常清楚,將就! ) 。根據(jù)向?qū)Ы⒑螅谛陆ǖ?/font> cab 項(xiàng)目中點(diǎn)“屬性”,最后,生成就行了。 CP 到板子就可以運(yùn)行了。

            注意:所有的 CP 都是用 ActiveSync 軟件通過(guò) USB 傳輸?shù)模?dāng)然可以用其它傳輸手段,最終能上板子就行。

            -Zm200 -w34100 -w34189 -Zm200 -w34100 -w34189 -w34100 -w34189

            注意在 WinCE 部署時(shí)的版本,如果設(shè)備上的 WinCE 版本比開(kāi)發(fā)用的版本低的話,將顯示“ ****, 需要更新的 Windows 版本”云云。

            /SUBSYSTEM:WINDOWSCE,5.00 /MACHINE:THUMB

            /SUBSYSTEM:WINDOWSCE,5.00 /MACHINE:THUMB



            posted on 2010-06-18 10:16 erran 閱讀(1043) 評(píng)論(0)  編輯 收藏 引用 所屬分類: QT
            国产欧美久久一区二区| 亚洲中文久久精品无码ww16| 久久免费精品视频| 国产—久久香蕉国产线看观看 | 久久天天婷婷五月俺也去| 亚洲欧美一级久久精品| 99国产欧美久久久精品蜜芽| 日韩精品无码久久一区二区三| 狠狠色丁香久久婷婷综合五月| 久久无码一区二区三区少妇| 国产精品9999久久久久| 久久久久久国产a免费观看黄色大片 | 欧美久久久久久| 国产精品综合久久第一页| 久久久一本精品99久久精品66| 亚洲AV无码一区东京热久久 | 国产午夜精品理论片久久影视 | 一本大道久久香蕉成人网| 国产三级久久久精品麻豆三级| 色8激情欧美成人久久综合电| 久久精品国产精品青草| 日产精品久久久久久久性色| 蜜桃麻豆www久久国产精品| 国产A级毛片久久久精品毛片| 97久久综合精品久久久综合| 久久无码人妻一区二区三区午夜| 久久人人爽人人爽人人片AV高清| 久久久久噜噜噜亚洲熟女综合| 日韩欧美亚洲综合久久影院d3| 久久精品国产99久久无毒不卡| A级毛片无码久久精品免费| 中文字幕热久久久久久久| 中文字幕久久精品| 亚洲午夜久久久久久久久电影网| 久久亚洲AV成人无码软件 | 97久久久久人妻精品专区| 久久久国产精品亚洲一区| 99久久久国产精品免费无卡顿| 69久久夜色精品国产69| 777久久精品一区二区三区无码| 久久国产精品久久|