wince5.0 BSP移植到wince6.0过程讨论(S3C2440A)有经验的请进!

jdzczz   2009-11-11 14:50 楼主
   
       本人参照ztg0021和googleman的博文,开始了wince5.0 BSP移植到wince6.0的工作,把KITL和OAL有移植好了,进展很慢,编译过程出现下面的错误:
BUILD: [00:0000000068:WARNN ] C:\WINCE600\PLATFORM\MYSMDK2440A\Src\KITL\: Missing source file: C:\WINCE600\public\common\oak\lib\ARMV4I\debug\nk.lib.
BUILD: [00:0000000069:WARNN ] C:\WINCE600\PLATFORM\MYSMDK2440A\Src\KITL\: Missing source file: C:\WINCE600\platform\MYSMDK2440A\lib\ARMV4I\debug\smflash_lib.lib.
BUILD: [00:0000000087:PROGC ] Building LINK Pass in C:\WINCE600\PLATFORM\MYSMDK2440A\Src\KITL\ directory.
BUILD: [01:0000000099:ERRORE] NMAKE :  U1073: don't know how to make 'C:\WINCE600\OSDesigns\SS\SS\Wince600\MYSMDK2440A_ARMV4I\cesysgen\oak\lib\ARMV4I\debug\nk.lib'
BUILD: [01:0000000101:ERRORE] NMAKE.EXE TargetExeFiles  -i -c BUILDMSG=Stop.  BUILDROOT=C:\WINCE600\PLATFORM\MYSMDK2440A LINKONLY=1 NOPASS0=1 failed - rc = 2

按理我移植的地方,没有包含nk.lib啊,去都按照ztg0021,替换了。请网友帮我解决一下。先谢谢!

回复评论 (20)

引用: 引用 17 楼 wlc311 的回复:

引用 12 楼 xilidecai 的回复:
首先,你说的有点乱,我知道你的大概意思,你先按照ztg的调,GM也是在此基础上进行修改的,然后你在参考GM的。不要搞混,最万能的方法是参考MSDN,上面有的,我记得在KITL的时候就是看MSDN进行移植的。
其次,这个我做了,你先把OAL的调通,再考虑KITL,然后再接着往下考虑!
最后,还有什么问题再和我交流。当然了,我还在进行中!

兄……

汗 啊!
天天都不知道干啥子了,呵呵~~~发现自己过去很是浮躁啊!
你在忙什么呢?好久没有你的消息了·~~
点赞  2010-5-24 15:44
注意编译顺序?
怎么做
点赞  2009-11-11 15:43
先编译出个OAL先呗
点赞  2009-11-11 15:48
2440都停了,还弄2440干什么?
点赞  2009-11-11 16:02
我没有家KITL时候出现这样的
BUILD: [00:0000000060:WARNN ] H:\WINCE600\PLATFORM\QxCE6BSP\src\KITL\: Missing source file: H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\lib\ARMV4I\debug\kitl.lib.       
BUILD: [Thrd:Sequence:Type  ] Message
BUILD: [01:0000000100:ERRORE] NMAKE :  U1073: don't know how to make 'H:\WINCE600\OSDesigns\Try2440CE6\Try2440CE6\Wince600\QxCE6BSP_ARMV4I\cesysgen\oak\lib\ARMV4I\debug\kitl.lib'
BUILD: [01:0000000102:ERRORE] NMAKE.EXE TargetExeFiles  -i -c BUILDMSG=Stop.  BUILDROOT=H:\WINCE600\PLATFORM\QxCE6BSP CLEANBUILD=1 LINKONLY=1 NOPASS0=1MAKEDLL=1 failed - rc = 2
看见你改是
TARGETLIBS= \
    $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\kitlcore.lib            \
    $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\nkstub.lib            \
    $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\oemstub.lib            \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_abort_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_cache_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_memory_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\oal_io_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_intr_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_timer_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_power_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_rtc_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_ioctl_s3c2440a.lib \
    $(_PLATCOMMONLIB)\$(_CPUINDPATH)\oal_io.lib \
    $(_PLATCOMMONLIB)\$(_CPUDEPPATH)\oal_other.lib \
    $(_PLATCOMMONLIB)\$(_CPUDEPPATH)\oal_log.lib \
    $(_PLATCOMMONLIB)\$(_CPUDEPPATH)\oal_kitl.lib \
    $(_PLATCOMMONLIB)\$(_CPUINDPATH)\oal_ethdrv_cs8900a.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\ddk_io.lib  \
    $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\vbridge.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\kitl.lib \汗是这个没有删除掉。自己给自己打包,不错才怪
    $(_TARGETPLATROOT)\src\common\kitlusbser\kitlusbser_lib.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\smflash_lib.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\fulllibc.lib
在我那没有找到这个SOURCE啊


后来我就添加KITL,没有出现上面错误,就出现下面的错误了
BUILD: [00:0000000068:WARNN ] C:\WINCE600\PLATFORM\MYSMDK2440A\Src\KITL\: Missing source file: C:\WINCE600\public\common\oak\lib\ARMV4I\debug\nk.lib.
BUILD: [00:0000000069:WARNN ] C:\WINCE600\PLATFORM\MYSMDK2440A\Src\KITL\: Missing source file: C:\WINCE600\platform\MYSMDK2440A\lib\ARMV4I\debug\smflash_lib.lib.
BUILD: [00:0000000087:PROGC ] Building LINK Pass in C:\WINCE600\PLATFORM\MYSMDK2440A\Src\KITL\ directory.
BUILD: [01:0000000099:ERRORE] NMAKE :  U1073: don't know how to make 'C:\WINCE600\OSDesigns\SS\SS\Wince600\MYSMDK2440A_ARMV4I\cesysgen\oak\lib\ARMV4I\debug\nk.lib'
BUILD: [01:0000000101:ERRORE] NMAKE.EXE TargetExeFiles  -i -c BUILDMSG=Stop.  BUILDROOT=C:\WINCE600\PLATFORM\MYSMDK2440A LINKONLY=1 NOPASS0=1 failed - rc = 2

我现在有点乱,还是按照你说,一步步来做
就先OAL吧
点赞  2009-11-11 16:16
在fileview栏选中OAL所在的目录,然后build current project就行了
或者是在dir文件中把OAL的文件夹提前一点
点赞  2009-11-11 16:18
引用: 引用 9 楼 veabol 的回复:
在fileview栏选中OAL所在的目录,然后build current project就行了
或者是在dir文件中把OAL的文件夹提前一点

这样让它提前编译吗
点赞  2009-11-11 16:23
首先,你说的有点乱,我知道你的大概意思,你先按照ztg的调,GM也是在此基础上进行修改的,然后你在参考GM的。不要搞混,最万能的方法是参考MSDN,上面有的,我记得在KITL的时候就是看MSDN进行移植的。
其次,这个我做了,你先把OAL的调通,再考虑KITL,然后再接着往下考虑!
最后,还有什么问题再和我交流。当然了,我还在进行中!
点赞  2009-11-11 17:21
学习。。。。。
点赞  2009-11-13 08:35
帮ding~~~
点赞  2009-11-11 14:59
nk.lib——注意编译顺序,估计这个你没有生成。
点赞  2009-11-11 15:11
OALEXE下source
TARGETNAME=oal
TARGETTYPE=PROGRAM
RELEASETYPE=PLATFORM
SYNCHRONIZE_DRAIN=1
NOMIPS16CODE=1

EXEENTRY=StartUp

LDEFINES=-subsystem:native /DEBUG /DEBUGTYPE:CV /FIXED:NO

NOLIBC=1
SOURCES=


TARGETLIBS= \
    $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\oal.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\nkstub.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\nkldr.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\oemmain.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_abort_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_cache_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_memory_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_timer_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_intr_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_power_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_rtc_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_ioctl_s3c2440a.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\oal_profiler_s3c2440a.lib \
    $(_PLATCOMMONLIB)\$(_CPUINDPATH)\oal_io.lib \
    $(_PLATCOMMONLIB)\$(_CPUDEPPATH)\oal_other.lib \
    $(_PLATCOMMONLIB)\$(_CPUDEPPATH)\oal_log.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\fulllibc.lib
OALLIB下source
TARGETNAME=oal
TARGETTYPE=LIBRARY
RELEASETYPE=PLATFORM
NOMIPS16CODE=1

CDEFINES=$(CDEFINES) -DCEDDK_USEDDKMACRO

!IF "$(BSP_USEDVS)" == "1"
CDEFINES=$(CDEFINES) -DDVS_EN
!ENDIF

!IF "$(BSP_KITL)" == "SERIAL_UART0"
CDEFINES=$(CDEFINES) -DKITL_SERIAL_UART0
!ENDIF
!IF "$(BSP_KITL)" == "SERIAL_UART1"
CDEFINES=$(CDEFINES) -DKITL_SERIAL_UART1
!ENDIF
!IF "$(BSP_KITL)" == "USBSERIAL"
CDEFINES=$(CDEFINES) -DKITL_USBSERIAL
!ENDIF
!IF "$(BSP_KITL)" == "ETHERNET"
CDEFINES=$(CDEFINES) -DKITL_ETHERNET
!ENDIF

SOURCES=\
    args.c \
    init.c \
    intr.c \
    ioctl.c \
    debug.c \
    power.c \

ARM_SOURCES=\
    startup.s
这里应该都没有包含NK。LIB啊
点赞  2009-11-11 16:06
我不加LCD驱动,BSP的dir直接就包含oal,这样创建OS进行编译是吗
PCBXML ,platform.reg ,platform.BIB一些想关驱动的东西都要去掉吗
还是直接在dir不包含,就不会编译了
点赞  2009-11-11 16:11
引用: 引用 9 楼 veabol 的回复:
在fileview栏选中OAL所在的目录,然后build current project就行了
或者是在dir文件中把OAL的文件夹提前一点

我一般看OAL在DIR都在最后面,没有nk.lib是它影响的吗
PCBXML 里ITEM的环境变量是怎么定啊
我想添加驱动的ITEM时候,环境变量怎么添啊
高手给点意见
点赞  2009-11-11 16:27
引用: 引用 12 楼 xilidecai 的回复:
首先,你说的有点乱,我知道你的大概意思,你先按照ztg的调,GM也是在此基础上进行修改的,然后你在参考GM的。不要搞混,最万能的方法是参考MSDN,上面有的,我记得在KITL的时候就是看MSDN进行移植的。
其次,这个我做了,你先把OAL的调通,再考虑KITL,然后再接着往下考虑!
最后,还有什么问题再和我交流。当然了,我还在进行中!

很感谢你
好问题才请教你,我在编译OAL,在看看
点赞  2009-11-11 17:45
学习,帮顶
点赞  2009-11-11 20:52
学习,帮顶
点赞  2009-11-13 18:30
我关注中。。。
点赞  2009-11-12 23:35
引用: 引用 12 楼 xilidecai 的回复:
首先,你说的有点乱,我知道你的大概意思,你先按照ztg的调,GM也是在此基础上进行修改的,然后你在参考GM的。不要搞混,最万能的方法是参考MSDN,上面有的,我记得在KITL的时候就是看MSDN进行移植的。
其次,这个我做了,你先把OAL的调通,再考虑KITL,然后再接着往下考虑!
最后,还有什么问题再和我交流。当然了,我还在进行中!

兄弟,是不是整天看球赛呀,你已经搞了2,3个月了- -!
点赞  2009-11-13 18:22
12下一页
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复