当前位置: 代码迷 >> WinCE >> wince5.0怪异的编译异常
  详细解决方案

wince5.0怪异的编译异常

热度:224   发布时间:2016-04-28 13:49:05.0
wince5.0怪异的编译错误
一个月前编译都没问题,今天也没修改什么,就莫名其妙的出现了错误。。。
Sysgen下就出错了,以下是Build Output里最后的错误信息:
NETCF_MODULES= dotnet
Sysgening platform C:\WINCE500\platform\smdk2440
Sysgening platform C:\WINCE500\platform\smdk2440
\WINCE500\build.err
C:\WINCE500\build.err
C:\WINCE500\build.log
C:\WINCE500\build.wrn
已复制 3 个文件。

BLDDEMO: There were errors building QQ2440

QQ2440 - 0 error(s), 2 warning(s)

build.err里面的内容是:C:\WINCE500\build.log(1) : error SYSGEN0000: error(s) in sysgen phase 
在build.log:
C:\WINCE500\PUBLIC\QQ2440okAddEINT11AndIIC\WINCE500\smdk2440_ARMV4I\cesysgen\oak\lib\ARMV4I\retail\fatutil.exp 
fatutil.exp : error LNK2001: unresolved external symbol DefragVolume
fatutil.exp : error LNK2001: unresolved external symbol DefragVolumeEx
fatutil.exp : error LNK2001: unresolved external symbol DefragVolumeUI
fatutil.exp : error LNK2001: unresolved external symbol FormatVolume
fatutil.exp : error LNK2001: unresolved external symbol FormatVolumeEx
fatutil.exp : error LNK2001: unresolved external symbol FormatVolumeUI
fatutil.exp : error LNK2001: unresolved external symbol ScanVolume
fatutil.exp : error LNK2001: unresolved external symbol ScanVolumeEx
fatutil.exp : error LNK2001: unresolved external symbol ScanVolumeUI
C:\WINCE500\PUBLIC\QQ2440okAddEINT11AndIIC\WINCE500\smdk2440_ARMV4I\cesysgen\oak\target\ARMV4I\retail\fatutil.dll : fatal error LNK1120: 9 unresolved externals
NMAKE : fatal error U1077: 'link' : return code '0x460'
Stop.
NMAKE : fatal error U1077: 'C:\WINCE500\sdk\bin\i386\nmake.exe' : return code '0x2'
Stop.

------解决方案--------------------
探讨

按照网上给的办法:
(1)关掉所有杀毒软件,如瑞星、卡巴斯基、360杀毒等等;

(2)将菜单Build OS---Clean Before Building前的对勾打上;

(3)将platform目录下除你的开发板的BSP之外删除其它所有文件;

(4)将你的工程文件保存到C盘根目录下。

重新编译还是出错。。。

------解决方案--------------------
我觉得是组建添加时出的错,可能是跟文件系统那部分的组件有关。
我之前也遇到过这样的问题,再去掉相关的组件编译就能通过了。
或者选择build and sysgen编译一遍也能好。