嵌入式爱好者

查看: 9684|回复: 4

wince6.0内核debug版本编译出错,求解决办法!(已解决)

[复制链接]

5

主题

6

帖子

69

积分

扫一扫,手机访问本帖
发表于 2012-11-22 16:56:20 | 显示全部楼层 |阅读模式
本帖最后由 mu163163 于 2012-11-23 02:58 编辑

如题所述,release版本是没问题的,换成debug版本再重新编译(Clean Sysgen 跟 Build都出错)就出错了,出错信息如下:
BUILD: [Thrd:Sequence:Type  ] Message
BUILD: [01:0000005444:ERRORE] NMAKE :  U1073: don't know how to make 'E:\WINCE600\PLATFORM\SMDK6410\lib\ARMV4I\retail\DriverLib.lib'
BUILD: [01:0000005446:ERRORE] NMAKE.EXE TargetExeFiles  -i -c BUILDMSG=Stop.  BUILDROOT=E:\WINCE600\PLATFORM\SMDK6410 CLEANBUILD=1 LINKONLY=1 NOPASS0=1MAKEDLL=1 failed - rc = 2

这是build.err里面的信息,然后去看了一下E:\WINCE600\PLATFORM\SMDK6410\SRC\DRIVERS\DrvLib下的sources文件,如下:
TARGETNAME = DriverLib
TARGETTYPE = LIBRARY
RELEASETYPE = PLATFORM
WINCEOEM = 1

INCLUDES = $(INCLUDES);$(_TARGETPLATROOT)\src\inc;

SOURCES=    \
        DriverLib_mem.c

ARM_SOURCES= \
    Oemaddrtab.s \

本人对这方面的知识不是很了解,不知道有没有哪位兄台试过编译出debug版本的内核,或者有解决办法的,希望能交流下。


该会员没有填写今日想说内容.
回复

使用道具 举报

5

主题

6

帖子

69

积分

 楼主| 发表于 2012-11-23 02:57:00 | 显示全部楼层
本帖最后由 mu163163 于 2012-11-23 03:02 编辑

弄了一个晚上,终于算是搞定了,先写下来吧。
我们先说说出现上述错误的原因吧,其实错误并不在DriverLib.lib这个库上,如果你去E:\WINCE600\PLATFORM\SMDK6410\lib\ARMV4I\debug这个目录下看的时候,你会发现,其实DriverLib.lib这个库已经存在了,那为什么有上面所说的错误呢,这个时候去看看编译的信息,你发现其实是由其他的库编译不成功造成的,我的是因为ADC这个库的编译不成功造成的,然后我们去看下E:\WINCE600\PLATFORM\SMDK6410\SRC\DRIVERS\ADC目录下的sources文件,结果发现如下的语句:
TARGETLIBS= \
    $(_PROJECTROOT)\cesysgen\sdk\lib\$(_CPUINDPATH)\coredll.lib \
        $(_WINCEROOT)\PLATFORM\SMDK6410\lib\ARMV4I\retail\DriverLib.lib \

这是生成ADC.lib的时候要动态链接的库,红色的部分就是出错的原因了,他引用的是retail目录下的库,而你用Clean Sysgen的时候,是会把retail目录下的东西清光的(Build不知道会不会),这个时候去链接这个库,就会提示找不到了。

知道了原因,就好办了,这里我想到的三种解决办法:
1.从debug目录copy一个DriverLib.lib到retail目录下。这是最简单的解决办法
2.release版本编译一遍,不要用Clean Sysgen,用Sysgen编译就好
3.把上面说到的出问题的lib的sources文件改一下,让他去链接debug目录的库。不过这种办法吃力不讨好,因为你改了这个,再编译一次的话,会发现还有其他的库是存在问题的,你要改好多个,而且在你去编译release版本的时候,如果用的是Clean Sysgen的话,就会提示找不到debug目录下的库,这个时候你又要改回来了。
以上是我一个晚上的成果了,因为自己对驱动这块不熟悉,所以建议大家如果只是为了得到debug版本的内核的话,可以采取第一种办法,真正要有个完美的办法,看来得要写驱动的那个人来弄了。
以上都是个人见解,如果有不对的地方,欢迎大家指正,大家一起学习。:lol
好了,夜深了,终于可以睡个好觉了
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

69

主题

184

帖子

338

积分

RK3568通行证

发表于 2012-12-8 20:34:27 | 显示全部楼层
mu163163 发表于 2012-11-23 02:57
弄了一个晚上,终于算是搞定了,先写下来吧。
我们先说说出现上述错误的原因吧,其实错误并不在DriverLib. ...

感谢分享学习精神啊
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

15

主题

275

帖子

754

积分

发表于 2012-12-12 08:53:51 | 显示全部楼层
精神可嘉。
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-12-27 03:02

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表