當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀] 本文將不擇手段搜集WINCE PB的各種編譯不過的錯誤并給出解決方案或是相關(guān)思路,搜集資料來源:本人編譯出錯后得到解決后的學習筆記,網(wǎng)上搜集的資料,朋友的教導等,后面將會詳

 本文將不擇手段搜集WINCE PB的各種編譯不過的錯誤并給出解決方案或是相關(guān)思路,搜集資料來源:本人編譯出錯后得到解決后的學習筆記,網(wǎng)上搜集的資料,朋友的教導等,后面將會詳細備注,大家一起交流.

一:不能sysgen,sysgen變灰色

檢查BSP包的命名,所建工程的命名是否正確!

二:*(LPDWORD) OEMMapMemAddr (dwImageStart, dwImageStart + ROM_SIGNATURE_OFFSET)函數(shù)不等于“CECE”

如下函數(shù)不執(zhí)行:[ROM_SIGNATURE=“CECE”]

if (*(LPDWORD) OEMMapMemAddr (dwImageStart, dwImageStart + ROM_SIGNATURE_OFFSET) == ROM_SIGNATURE)

{

//added by lqm,2009.07.11

//EdbgOutputDebugString(“*OEMMapMemAddr() = 0x%xrn”,*(LPDWORD) OEMMapMemAddr (dwImageStart, dwImageStart + ROM_SIGNATURE_OFFSET));

EdbgOutputDebugString(“*OEMMapMemAddr() = 0x%xrn”,*(LPDWORD) OEMMapMemAddr (0x80200000,0x80200040));

EdbgOutputDebugString(“dwImageStart:0x%xrn”,dwImageStart);

EdbgOutputDebugString(“ROM_SIGNATURE_OFFSET:0x%xrn”,ROM_SIGNATURE_OFFSET);

EdbgOutputDebugString(“ROM_SIGNATURE:0x%xrn”,ROM_SIGNATURE);

// 緊接著存放CECE的后面就是TOC,里面存有NK.exe的地址.其中sizeof(ULONG)用于順延存放CECE的四個字節(jié)區(qū)域

dwpToc = *(LPDWORD) OEMMapMemAddr (dwImageStart, dwImageStart + ROM_SIGNATURE_OFFSET + sizeof(ULONG));

// 為了修正指針,需要再次映射一次

// need to map the content again since the pointer is going to be in a fixup address

dwpToc = (DWORD) OEMMapMemAddr (dwImageStart, dwpToc + g_dwROMOffset);

EdbgOutputDebugString (“ROMHDR at Address 0x%Xrn”, dwImageStart + ROM_SIGNATURE_OFFSET + sizeof (DWORD)); // right after signature

}

一起以為是沒找著TOP里面的“CECE”,后來經(jīng)魏公公指點,原來是之前生成的XIP.bin不是XIP模式的.

將processbib.exe,preromimage.bat兩個文件放到D:WINCE500PLATFORMSMDK2450Files目錄下,先copy files to release,

再make一下,生成的xip.bin就是xip模式的了.

三:PB編譯時提示spawn failed:invalid argument錯誤

每次編譯出錯信息還不一樣!

這次提示如下錯誤:

BUILD: [01:0000000836:PROGC ] Compiling .arcdlg.cpp

BUILD: [01:0000000839:PROGC ] Compiling .connectingdlg.cpp

BUILD: [01:0000000842:PROGC ] Compiling .dlgbase.cpp

BUILD: [01:0000000845:PROGC ] Compiling .events.cpp

BUILD: [01:0000000848:PROGC ] Compiling .mainwnd.cpp

BUILD: [01:0000000851:PROGC ] Compiling .rdrwarndlg.cpp

BUILD: [01:0000000854:PROGC ] Compiling .settings.cpp

BUILD: [01:0000000857:PROGC ] Compiling .utils.cpp

BUILD: [01:0000000860:PROGC ] Linking C:WINCE500publicrdpoaklibA

RMV4Iretailcetscbase.lib

BUILD: [00:0000000865:PROGC ] Compiling WINCE500PUBLICRDPOAKUITCETSCCLIP directory.

BUILD: [01:0000000872:PROGC ] Compiling .tscclip.cpp

BUILD: [01:0000000875:PROGC ] Linking C:WINCE500publicrdpoaklibarmV4Iretailcetscclip.lib

BUILD: [00:0000000878:PROGC ] Compiling WINCE500PUBLICRDPOAKUITCETSCUI directory.

BUILD: [01:0000000885:PROGC ] Compiling .tscui.cpp

BUILD: [01:0000000888:PROGC ] Compiling .maindlg.cpp

BUILD: [01:0000000891:PROGC ] Compiling .propdisplay.cpp

BUILD: [01:0000000894:PROGC ] Compiling .propgeneral.cpp

BUILD: [01:0000000897:PROGC ] Compiling .proplocalres.cpp

BUILD: [01:0000000900:ERRORE] NMAKE : U1045: spawn failed : Invalid argument

BUILD: [01:0000000903:ERRORE] NMAKE.EXE -i -c BUILDMSG=Stop. NOLINK=1 NOPASS0=1 failed - rc = 2

下面還有一個錯誤:

BUILD: [00:0000000101:PROGC ] Scan WINCE500PUBLICWCESHELLFEOAKWATSONDWUI

BUILD: [00:0000000106:PROGC ] Scan WINCE500PUBLICWCESHELLFEOAKWATSONDWCTLPNL

BUILD: [00:0000000109:PROGC ] Saving C:WINCE500PUBLICWCESHELLFEBuild.dat.

BUILD: [00:0000000111:PROGC ] Total of 0 pass zero files to compile in 14 directories.

BUILD: [00:0000000112:PROGC ] Building generated files in WINCE500PUBLICWCESHELLFEOAKCTLPNLcplmain.

BUILD: [00:0000000119:PROGC ] Building generated files in WINCE500PUBLICWCESHELLFEOAKCTLPNLADVBACKLIGHT.

BUILD: [00:0000000126:PROGC ] Building generated files in WINCE500PUBLICWCESHELLFEOAKCTLPNLCONNPNL.

BUILD: [01:0000000129:ERRORE] NMAKE.EXE -i -c BUILDMSG=Stop. NOLINK=1 PASS0ONLY=1 CLEANBUILD=1 failed - rc = 1

BUILD: [00:0000000130:PROGC ] Files Warnings Errors

BUILD: [00:0000000131:PROGC ] Midl 0 0 0

BUILD: [00:0000000132:PROGC ] Resource 0 0 0

BUILD: [00:0000000133:PROGC ] Message 0 0 0

BUILD: [00:0000000134:PROGC ] Precomp Header 0 0 0

BUILD: [00:0000000135:PROGC ] C/Cpp/Cxx 0 0 0

BUILD: [00:0000000136:PROGC ] Assembler 0 0 0

BUILD: [00:0000000137:PROGC ] Static Libraries 0 0 0

BUILD: [00:0000000138:PROGC ] Dll's 0 0 0

BUILD: [00:0000000139:PROGC ] Exe's 0 0 0

BUILD: [00:0000000140:PROGC ] Resx 0 0 0

BUILD: [00:0000000141:PROGC ] Csharp Targets 0 0 0[!--empirenews.page--]

BUILD: [00:0000000142:PROGC ] Other 0 0 1

BUILD: [00:0000000143:PROGC ]

BUILD: [00:0000000144:PROGC ] Total 0 0 1

BUILD: [00:0000000145:PROGC ]

BUILD: [00:0000000146:PROGC ] 0 Warnings, 1 Errors

最后提示的錯誤:

Build for Windows CE (Release) (Built on Apr 14 2005 13:54:39)

File names: Build.log Build.wrn Build.err Build.dat

CEBUILD: Running sysgen -p wceshellfe preproc

Starting sysgen phase for project ( wceshellfe )

Sysgening platform C:WINCE500platformsmdk2450

Sysgening platform C:WINCE500platformsmdk2450

WINCE500build.err

C:WINCE500build.err

C:WINCE500build.log

C:WINCE500build.wrn

已復制 3 個文件.

BLDDEMO: There were errors building 2450_p900

2450_p900 - 3 error(s), 10 warning(s)

這個問題比較麻煩,我通過重裝系統(tǒng)(換用另外一張堞裝,非ghost),成功過一次,換用臺式機,也成功過.但是筆記本上后來又不行了,原因不明.

四:PB編譯提示don't know how to make.........................

編譯2450 bootloader出錯,編譯driver沒錯,

編譯Eboot錯誤如下:

BUILD: [01:0000000039:PROGC ] Compiling .debug.c

BUILD: [01:0000000042:PROGC ] Compiling .ether.c

BUILD: [01:0000000045:PROGC ] Compiling .flash.c

BUILD: [01:0000000048:PROGC ] Compiling .nand.cpp

BUILD: [01:0000000051:PROGC ] Compiling .usb.c

BUILD: [01:0000000054:PROGC ] Assembling .usbs.s

BUILD: [00:0000000060:PROGC ] Linking WINCE500PLATFORMSMDK2450SrcBootloaderEboot.Whimory directory.

BUILD: [01:0000000067:ERRORE] NMAKE : U1073: don't know how to make 'E:WINCE500platformsmdk2450libarmV4Iretailoal_memory_s3c2450.lib'

BUILD: [01:0000000069:ERRORE] NMAKE.EXE -i -c BUILDMSG=Stop. LINKONLY=1 NOPASS0=1 failed - rc = 2

BUILD: [00:0000000070:PROGC ] Files Warnings Errors

BUILD: [00:0000000071:PROGC ] Midl 0 0 0

BUILD: [00:0000000072:PROGC ] Resource 0 0 0

BUILD: [00:0000000073:PROGC ] Message 0 0 0

BUILD: [00:0000000074:PROGC ] Precomp Header 0 0 0

BUILD: [00:0000000075:PROGC ] C/Cpp/Cxx 6 2 0

BUILD: [00:0000000076:PROGC ] Assembler 3 0 0

BUILD: [00:0000000077:PROGC ] Static Libraries 0 0 0

BUILD: [00:0000000078:PROGC ] Dll's 0 0 0

BUILD: [00:0000000079:PROGC ] Exe's 0 0 0

BUILD: [00:0000000080:PROGC ] Resx 0 0 0

BUILD: [00:0000000081:PROGC ] Csharp Targets 0 0 0

BUILD: [00:0000000082:PROGC ] Other 0 0 2

BUILD: [00:0000000083:PROGC ]

BUILD: [00:0000000084:PROGC ] Total 9 2 2

BUILD: [00:0000000085:PROGC ]

BUILD: [00:0000000086:PROGC ] 2 Warnings, 2 Errors

Build for Windows CE (Release) (Built on Apr 14 2005 13:54:39)

File names: Build.log Build.wrn Build.err Build.dat

2450_p900 - 2 error(s), 2 warning(s)

我按照提示的路徑找不著這個靜態(tài)庫,oal_memory_s3c2450.lib

難道這個靜態(tài)庫PB裝時給漏掉了?

后來重裝WINCE,打04,05,06,07年的補丁,問題依舊.看來還是沒經(jīng)驗啊,感謝CSDN的高手Veabol,編譯SrcCommon后,果真生成了oal_memory_s3c2450.lib.

可是又出來一個CS8900*.lib的靜態(tài)庫,后面的字符不記得了,看來還有其他地方要生成該庫.編譯整個SMDK2450工程,看提示估計是該靜態(tài)庫是生成了,但是又

彈出另外一個對話框,提示某文件無法編譯,該文件為我已前做好的備份文件,有中文名.刪除該文件后,再編譯,仍然提示該錯,將BSP根目錄的build.dat刪除,

再編譯,問題徹底解決.

看來很多靜態(tài)庫不是PB裝好后本身就有的,而需要編譯一些代碼才能生成.

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉