Platform创建WinCE内核时的编译错误

本文记录了在使用Platform Builder创建Windows CE内核时遇到的编译错误,包括找不到nlscfg.inf和kernkitl.exe文件的问题,并提供了具体的解决步骤。

 按照向导建立一个新的平台,编译,然后出现如下错误。

makeimg: Creating <...> nlscfg.out because <... > nlscfg.inf doesn't exist. 
makeimg: run command: fmerge -nls <....> nlscfg.out <... > nlscfg.inf 
Error - cannot open input file C<...> /postproc/nlscfg.inf  fmerge for Windows CE (Release)
makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec). 
makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec).


在PB的Menu/ Build OS/ Copy files to release directory手动复制一次,即解决了找不到nlscfg.inf 文件的错误。



然而又出现了:

Error: Could not find file '/WINCE420/PUBLIC/videonimage/RelDir/CIRRUS_EP931X_ARMV4IRelease/kernkitl.exe' on disk
nk.exe /WINCE420/PUBLIC/videonimage/RelDir/CIRRUS_EP931X_ARMV4IRelease/kernkitl.exe NK SH
Error: failed setting line
makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec).
makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec).
Error PB2505: Error executing #(/WINCE420/PUBLIC/videonimage/RelDir/CIRRUS_EP931X_ARMV4IRelease/)makeimg.exe.

又找不到
kernkitl.exe了。

然后我在wince500/目录下搜索“kernkitl.exe”,找到一个原有的,复制到缺少的目录中,再次编译,即通过。
kernkitl.exe是调试用的工具对应的程序。

070329_2440test - 0 error(s), 0 warning(s)

--------------------------------------------------------------------------------
参考资源:

Hi Steve,

are you working under Windows CE V5.0? I had some similar problem and the 
only thing I have done was from Platform Builder menu Build OS select Copy 
Files to Release directory. 

It seems that not all files are in your release directory and causes this 
error. I had this problem when I build a new kernel and the buidl process 
was stopped buy and error. Hope that will help you. 

Best regards, 

Mike E. 

"steve hutch" 
<stevehutch@xxxxxxxxxxxxxxxxxxxxxxxxx> escribió en el mensaje 
news:6D683C31-E4FF-4158-9FF6-5EDF61458A12@xxxxxxxxxxxxxxxx 
> When I try "Make run time image" from platform builder for my application 

> get the following error : 

> makeimg: Creating 
<...> nlscfg.out because <... > nlscfg.inf doesn't 
exist. 
> makeimg: run command: fmerge -nls 
<....> nlscfg.out <... > nlscfg.inf 
> Error - cannot open input file C
<...> postproc lscfg.inf 
> fmerge for Windows CE (Release) (Built on Jan 29 2004 17:34:26) 
> makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec). 
> makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec). 

> Can somebody tell me what the reason for this error is and how to overcome 
it. 
> Thanks 
> Steve. 

 

请教Platform创建WinCE内核时遇到的错误 


    小弟遇到个麻烦,内核在创建完了之后进行BUILD,会出现很多ERROR,请教高手当遇到ERROR的时候怎么定位错误出处和修改。还有就是我在BUILD的时候出现如下ERROR:
    
regcomp: Overwriting existing value [HKEY_CLASSES_ROOTSSCE.Errors.2.0] "Default" in system registry
regcomp: Overwriting existing value [HKEY_CLASSES_ROOTSSCE.Errors.2.0CLSID] "Default" in system registry
Error: Could not find file 'WINCE420PUBLICvideonimageRelDirCIRRUS_EP931X_ARMV4IReleasekernkitl.exe' on disk
Error: Could not find file 'WINCE420PUBLICvideonimageRelDirCIRRUS_EP931X_ARMV4IReleasekernkitl.exe' on disk
nk.exe WINCE420PUBLICvideonimageRelDirCIRRUS_EP931X_ARMV4IReleasekernkitl.exe NK SH 
Error: failed setting line
makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec).
makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec).
Error PB2505: Error executing #(WINCE420PUBLICvideonimageRelDirCIRRUS_EP931X_ARMV4IRelease)makeimg.exe.
希望哪个有经验的高手指点下,这些错误都是什么原因造成的,小弟不胜感激。  

-------------------------------------------------------------------------------------------------------------------------
kernkitl.exe是调试用的工具对应的程序,在project/release目录下未找到。

原因可能是:没有选中该项,编译中就未将需要的exe copy到release目录下,makeImage时,就会出错。

简单的确认办法:在以前编译通过的Project,找到这个exe,放到目前project的release目录下,再运行make image。能通过就ok。

-------------------------------------------------------------------------------------------------------------------------
1. 在你的winceXXX/platform目录下搜索“kernkitl.exe”,看看对应平台的kernkitl.exe是否已经存在。
2. 看看在“Build OS”里选中了“copy files to release directory after build”项了没有?
3. 选择“build and sysgen"再试。
3. makeimg: FATAL ERROR: Command returned non-zero exit code 1 (dec).
是因为上面的错误不能生成最终映像的提示信息,将所有错误消除了这个提示自然就没有了。


 


评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值