windows mobile 編譯鏡像總是讓人難以忍受的耗時,當然我們不能每次修改一點東西就build All一次。
下面是自己工作中積累的【不同情況下使用的編譯命令】來加速生成鏡像的過程,不排除有錯的可能,歡迎指正。 對於修改,一般可以分爲以下幾種類型: (1)修改public下的東西(一般不會修改這裏的東西) (2)修改了Cesysgen.bat或是會影響到Cesysgen.bat的環境變量,如以SYSGEN或BSP爲前綴的變量。 (3)修改platform/%myPlatform%下的東西 其中(3)又可以分爲: (4)只修改reg、bib文件 (5)只修改了%myPlatform%下的源碼 一、 blddemo命令 關於blddemo,msdn裏有詳細介紹,但講得很不清楚。 如果沒記錯的話,這是一個批處理(bat)文件,會執行一些列命令,可以根據不同情況使用不同參數, 下面主要是對其加以總結,到底什麼時候用什麼參數,這正是msdn沒有講清楚卻是最重要的部分。 blddemo最常用的有三個參數:clean -q -qbsp (1)clean:如果修改了跟sysgen相關的,也就是說上面的第(2)種情況,那就要加上clean。 (2)-q:如果沒有修改public下的東西,則可加上-q,因爲public下的東西一般是不會修改的,微軟不推薦修改這裏的東西,所以一般都會用到-q。 (3)-qbsp:我理解是quick BSP,也就是說只要是只修改了%myPlatform%下的東西,這一個參數便肯定能將修改編入鏡像,不管是源碼還是reg、bib或者其他。 -qbsp 似乎已包含了-q 功能,沒見過二者同時用的情況,也就是說只改動%myPlatform%下的肯定就沒改動public下的,所以-qbsp一般單獨使用。 對於blddemo命令最常用參數組合整理如下: 若public沒改變 (a)blddemo clean -q :sysgen 改變(build all 就是使用了這個命令) (b)blddemo -q :sysgen沒變 (c)blddemo -qbsp:只改變了%myplatform%下的東西 這裏從上到下耗時依次減少。 若public改變,則使用blddemo 或blddemo clean ,這兩項很少用到,理論上用法,沒驗證過。 二、makeimg 命令 以上雖然blddemo -qbsp耗時最少,但耗時還是很長。我平時用的最多的是makeimg命令,這個命令就是生成鏡像的意思,也是會執行一系列操作,屬於最後一個步驟,所以耗時幾乎是最短的了。但有個前提,它的所有操作都是針對release目錄下的內容。 makeimg會執行reg、bib等的合併操作,但都是對release目錄下的,比如platform.reg common.reg project.reg 三個合併成一個reginit.ini,明白了這一點就好辦了。 對於上面所說的第(4)種情況,也就是只改動reg或bib文件,最快速的方法是: 直接修改release目錄下的platform.reg、platform.bib,把需要的文件拷貝到release目錄下,然後makeimg即可。 如果確定生效了,再到%myplatform%下修改,以防不小心執行了其他操作把release下的修改的東西給覆蓋了。 三、最後貼一個公司裏其他人用的一個bat文件,用時最少,我看不懂,這裏不解釋。 適用情況好像是修改%myplatform%下的源碼文件,特別是修改了PLATFORM/COMMON/SRC/SOC/的情況。 懂的人請不吝賜教。 (裏面的參數需要根據自己的平臺設置一下) call cls set WMxxx=I:/wm604 set MyPlatform=DracoBSP set Version=Retail setlocal pushd I: cd %WMxxx%/BuildScripts/WPC_%MyPlatform%_%Version%/ call baseOSEnv.bat cd %WMxxx%/PLATFORM/COMMON/SRC/SOC/ call build cd %WMxxx%/platform/%MyPlatform% call build REM %_FLATRELEASEDIR%/%_TGTPLAT%.cfg.xml REM %_FLATRELEASEDIR%/%_TGTPLAT%.sku.xml call packagegenerator packages.pkd.xml.merged call dskimage %MyPlatform%.cfg.xml %MyPlatform%.sku.xml cd %WMxxx%/PLATFORM/%MyPlatform%/FILES call postdiskimage popd endlocal pause |
windows mobile 編譯(生成鏡像)提速
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.