解决WINCE6.0新建工程编译出错的问题

简介:

作者:LoongEmbedded(kandi)

时间:2011.8.13

类别:WINCE系统开发

********************************LoongEmbedded********************************

基于WINCE6.0系统,根据PDA模板新建了工程之后,现把遇到的问题和解决的方法记录一下

 

 

1.     编译系统找不到atls.lib

 

这里要特别注意的是,发生类似这样的错误的时候,如果从\WINCE600\build.err文件来找错误的原因,很难,因为只有下面的信息:

F:\WINCE600\build.log(1) : error SYSGEN0000: error(s) in sysgen phase

这里只是告诉我们在sysgen阶段的时候出错,并没有告诉我们更有的出错信息,也就很难确定编译出错的原因,但我们可以从\WINCE600\buildl.og中获取更多有效的信息,如下:

Directory: F:\WINCE600\PUBLIC\SCRIPT\CESYSGEN

TARGETNAME: jscript

makefile.def: Including F:\WINCE600\public\common\oak\misc\sources.ReleaseType_OAK

NMAKE : fatal error U1073: don't know how to make 'F:\WINCE600\OSDesigns\sfck6410\sfck6410\Wince600\SMDK6410_ARMV4I\cesysgen\oak\lib\ARMV4I\retail\atls.lib'

Stop.

从上面的信息可以分析是在编译SCRIPT这部分的时候,找不到所以来的atls.lib这个库文件,而atls.lib对应于Active Template Library(ATL)这个组件,选上这个组件后就可以解决这个问题

解决WINCE6.0新建工程编译出错的问题 - 男儿当自强 - 男儿当自强的博客

图1

JScript是由微软公司开发的活动脚本语言,是微软对ECMAScript规范的实现,而ECMAScript是一种由欧洲计算机制造商协会(ECMA)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为JavaScript或JScript,但实际上后两者是ECMA-262标准的扩展。

 

活动模板库(ATL Active TEmplate Library),是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。如果网络开发人员需要跟踪客户的请求,那么可以编写通用网关接口(CGI common gateway interface)程序,如果网络服务器是微软公司的网络信息服务器(IIS internet information server),那么还可以在网页中嵌入脚本语言。这种网页称为ASP页面,后缀名称为.asp。在ASP页面中的脚本语言将会首先被服务器解释执行,然后传送到用户端。另外的一种方法是将脚本语言先编译为可执行文件,这种能够被编译为可执行文件的脚本程序通常是用C++这种面向对象的编程语言编写的。由于可编译程序的运行速度明显优于脚本程序,因此,网页的运行速度明显变快。由于C++程序同操作系统结合得更为紧密。,因此,利用ATL编写的网页还有更多的优点。不过,用C++写程序也要比写脚本语言程序用的复杂程度高,消耗时间也要来得长一些。

 

  通过活动模板库,可以建立COM组件,然后通过ASP页面中的脚本对COM对象进行调用。微软公司称COM对象的运行速度更快,稳定程度也更强。这种COM组件可以包含属性页、对话框等等控件。

 

2.     解决了上面这个问题,接下来遇到编译系统找不到SDcardlib.lib的问题

BUILD: [01:0000005515:INFO  ] Directory: F:\WINCE600\PLATFORM\SMDK6410\SRC\DRIVERS\WIFI_SDIO\WLAN

BUILD: [01:0000005516:INFO  ] TARGETNAME: SDIO8686

BUILD: [01:0000005517:INFO  ] makefile.def: Including F:\WINCE600\public\common\oak\misc\sources.ReleaseType_PLATFORM

BUILD: [01:0000005518:ERRORE] NMAKE :  U1073: don't know how to make 'F:\WINCE600\OSDesigns\sfck6410\sfck6410\Wince600\SMDK6410_ARMV4I\cesysgen\oak\lib\ARMV4I\retail\SDcardlib.lib'

BUILD: [01:0000005519:INFO  ] Stop.

由上面的信息可以判断,在编译SMDK6410\SRC\DRIVERS\WIFI_SDIO\WLAN的时候,编译系统提示找不到SDcardlib.lib,这说明WLAN的sources文件会用到SDcardlib.lib,选择了Device Drivers->SDIO->SDIO Memory->SD Memory组件就可以解决这个问题

解决WINCE6.0新建工程编译出错的问题 - 男儿当自强 - 男儿当自强的博客

图2

 

3.     解决了上面这个问题,接下来遇到编译系统找不到ddraw.lib的问题

BUILD: [00:0000006675:PROGC ] Building LINK Pass in F:\WINCE600\PLATFORM\SMDK6410\SAMPLES\MFC\MFC_DecodeDemo\MfcDemo\ directory.

BUILD: [01:0000006689:ERRORE] NMAKE :  U1073: don't know how to make 'F:\WINCE600\OSDesigns\sfck6410\sfck6410\Wince600\SMDK6410_ARMV4I\cesysgen\sdk\lib\ARMV4I\retail\ddraw.lib'

BUILD: [01:0000006691:ERRORE] NMAKE.EXE TargetExeFiles  -i -c BUILDMSG=Stop.  BUILDROOT=F:\WINCE600\PLATFORM\SMDK6410 CLEANBUILD=1 LINKONLY=1 NOPASS0=1 failed - rc = 2

由上面的信息可以判断,在编译SMDK6410\SAMPLES\MFC\MFC_DecodeDemo\MfcDemo的时候,编译系统提示找不到ddraw.lib,这说明WLAN的sources文件会用到ddraw.lib,选择了Core OS->Graphics and Multimedia Technologies->Graphics->DirectDraw组件就可以解决这个问题

解决WINCE6.0新建工程编译出错的问题 - 男儿当自强 - 男儿当自强的博客

图3

这样就可以解决了编译出错的信息,后面就可以基于这个工程文件来根据我们系统所需的功能来添加相应的组件了。



本文转自 韬光星夜 51CTO博客,原文链接:http://blog.51cto.com/xfqxj/1352521,如需转载请自行联系原作者

相关文章
|
3月前
|
Linux 编译器 数据安全/隐私保护
Windows10 使用MSYS2和VS2019编译FFmpeg源代码-测试通过
FFmpeg作为一个流媒体的整体解决方案,在很多项目中都使用了它,如果我们也需要使用FFmpeg进行开发,很多时候我们需要将源码编译成动态库或者静态库,然后将库放入到我们的项目中,这样我们就能在我们的项目中使用FFmpeg提供的接口进行开发。关于FFmpeg的介绍这里就不过多说明。
76 0
|
8月前
|
编译器 C语言 Windows
Qt 使用MinGW编译器调用MinGW编译生成的dll
Qt 使用MinGW编译器调用MinGW编译生成的dll
122 0
|
9月前
MDK4工程用MDK5打开,编译引起的错误
MDK4工程用MDK5打开,编译引起的错误
83 2
MDK4工程用MDK5打开,编译引起的错误
|
10月前
|
芯片 内存技术
Keil-MDK编译完成后代码大小
Keil-MDK编译完成后代码大小
107 0
|
iOS开发
Xcode设置编译链接-framework CoreFoundation
Xcode设置编译链接-framework CoreFoundation
68 0
Xcode设置编译链接-framework CoreFoundation
|
C语言
keil5如何创建工程
首先双击点击打开我们的keil5的一个软件 新建一个工程,对于单片机的程序来说,每个功能程序都必须要
427 0
keil5如何创建工程
|
Linux
VC使用命令行编译很复杂
VC使用命令行编译很复杂
77 0
|
IDE JavaScript 编译器
Qt Creator IDE和MSVC 2015编译器组合使用(不想完整安装VS2015)
Qt Creator IDE和MSVC 2015编译器组合使用(不想完整安装VS2015)
495 0
Qt Creator IDE和MSVC 2015编译器组合使用(不想完整安装VS2015)
|
开发工具 Windows
WIN10+QT5.9+VS2017编译RedisDesktopManager
原文:WIN10+QT5.9+VS2015编译RedisDesktopManager 官方源码编译安装说明地址:http://docs.redisdesktop.com/en/latest/install/#build-from-source 最新版安装文件下载地址  https://download.
4575 0