4759|14

67

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

如何确定库文件与组件的关系 [复制链接]

BUILD: [01:0000000022:WARNN ] e:\WINCE500\PLATFORM\SMDK2440\DRIVERS\PCMCIA\init.c(83) : warning C4197: 'volatile PUCHAR' : top-level volatile in cast is ignored
BUILD: [01:0000000023:WARNN ] e:\WINCE500\PLATFORM\SMDK2440\DRIVERS\PCMCIA\init.c(84) : warning C4197: 'volatile PUCHAR' : top-level volatile in cast is ignored
BUILD: [01:0000000024:WARNN ] e:\WINCE500\PLATFORM\SMDK2440\DRIVERS\PCMCIA\init.c(225) : warning C4197: 'volatile PUCHAR' : top-level volatile in cast is ignored
BUILD: [01:0000000025:WARNN ] e:\WINCE500\PLATFORM\SMDK2440\DRIVERS\PCMCIA\init.c(226) : warning C4197: 'volatile PUCHAR' : top-level volatile in cast is ignored
BUILD: [01:0000000026:PROGC ] Compiling .\memory.c
BUILD: [01:0000000029:PROGC ] Compiling .\socket.c
BUILD: [01:0000000032:PROGC ] Compiling .\window.c
BUILD: [01:0000000045:ERRORE] NMAKE :  U1073: don't know how to make 'E:\WINCE500\platform\new2440\lib\ARMV4I\debug\cardserv.lib'
Build for Windows CE (Release) (Built on Apr 14 2005 13:54:39)
File names: Build.log Build.wrn Build.err Build.dat
BUILD: [01:0000000047:ERRORE] NMAKE.EXE   -i -c BUILDMSG=Stop.  NOLINK=1 NOPASS0=1 failed - rc = 2


大家好
从上面的信息能看出什么问题呢?

错误提示中的cardserv.lib与什么组件有关呢?
我在帮助文档里怎么查找与它有关的内容呢?我没搜到
我搜了一下,这个库文件在E:\WINCE500\PLATFORM\SMDK2440\DRIVERS\PCMCIA\sources文件里
这个PCMCIA又是什么?怎么知道她与哪个组件有关呢?

最新回复

呵呵,这个帖子你也发现了,我有一段时间没搞CE了,我记得好像是在source 文件中把不用的库屏蔽掉了比如 SOURCELIBS= \   $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\cardserv.lib \ 如果这个库出问题了,而且我又不用这个库,就屏蔽掉,不记得后来还有没有问题了,呵呵 把文件做备份,之后自己试着修改吧。祝你好运!  详情 回复 发表于 2009-11-2 15:55
点赞 关注

回复
举报

75

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
看头文件里面的编译开关
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
如果有源码,双击组件会自动跳到源码的,然后你去看看sources等文件就OK了。
——————————————————————————————————————
这个lib文件的使用,一般是包含该lib的头文件即可,因为头文件对lib之内的函数做了声明,这样就可以调用lib之内的函数干活了
PCMCIA是三星BSP本来的驱动啊,不是微软的组件。
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

4
 
cardserv.lib 是不是没有呢?
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(中级)

5
 
cardserv.lib 是没有啊

PCMCIA是三星BSP本来的,
E:\WINCE500\PLATFORM\SMDK2440\DRIVERS\PCMCIA\sources
上面这个文件里含有这个库,之前我也是用三星的这个BSP啊,编译也没报错,现在怎么有错误了?这个PCMCIA是什么用途,可以在编译的系统中去掉它吗?或者编译时不在编译那个原文件能做到吗?
下面是sources的内容
!if 0
Copyright (c) 2002. Samsung Electronics, co. ltd  All rights reserved.
!endif

!if "$(BSP_NOPCMCIA)" == "1"
SKIPBUILD=1
!endif

SYNCHRONIZE_DRAIN=1

TARGETNAME=pcmcia
RELEASETYPE=PLATFORM
TARGETTYPE=DYNLINK
TARGETLIBS=$(_COMMONSDKROOT)\lib\$(_CPUINDPATH)\coredll.lib \
#!IF $(_WINCEOSVER) >= 400
#           $(_COMMONOAKROOT)\target\$(_CPUINDPATH)\0409\pcmcia.res \
#!ELSE
#           $(_COMMONOAKROOT)\target\$(_CPUINDPATH)\usa\pcmcia.res \
#!ENDIF
                   $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\ceddk.lib
                  
SOURCELIBS=$(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\cardserv.lib \
           $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\drvlib.lib
PREPROCESSDEFFILE=1
DEFFILE=$(_PUBLICROOT)\common\oak\inc\pcmcia.def
#CDEFINES=$(CDEFINES) -DUSE_NEW_SERIAL_MODEL
DLLENTRY=DllEntry

INCLUDES=\
                                $(_PUBLICROOT)\common\oak\inc;$(_PUBLICROOT)\common\sdk\inc;$(_PUBLICROOT)\common\ddk\inc;        \
                                ..\..\inc
SOURCES= \
    init.c   \
    memory.c \
    socket.c \
    window.c
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

6
 
一般是因为pb里面没有对应的组件,或者有但是没有add到project中,编译过程中就没有对应的环境变量支持,导致需要的lib无法被编译,driver也就无法link需要的lib,结果报错。
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

7
 
有些没有用的驱动去掉即可
————————————————
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

8
 
引用 6 楼 gooogleman 的回复:
有些没有用的驱动去掉即可
————————————————


怎么去掉?在哪里去掉?BSP里吗?

我不想编译某个文件应该怎么做呢?是不是要到某个文件里去改?make文件?怎么找到相对应的文件呢?
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

9
 
# Copyright (c) 2002. Samsung Electronics, co. ltd  All rights reserved.
# !IF $(_WINCEOSVER) >= 400
#           $(_COMMONOAKROOT)\target\$(_CPUINDPATH)\0409\pcmcia.res \
# !ELSE
#           $(_COMMONOAKROOT)\target\$(_CPUINDPATH)\usa\pcmcia.res \
# !ENDIF
# CDEFINES=$(CDEFINES) -DUSE_NEW_SERIAL_MODEL

SYNCHRONIZE_DRAIN=1
TARGETNAME=pcmcia
RELEASETYPE=PLATFORM
TARGETTYPE=DYNLINK
TARGETLIBS= \
  $(_COMMONSDKROOT)\lib\$(_CPUINDPATH)\coredll.lib \
  $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\ceddk.lib \

SOURCELIBS= \
  $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\cardserv.lib \
  $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\drvlib.lib \

PREPROCESSDEFFILE=1
DEFFILE=$(_PUBLICROOT)\common\oak\inc\pcmcia.def
DLLENTRY=DllEntry
INCLUDES= \
  $(_PUBLICROOT)\common\oak\inc;$(_PUBLICROOT)\common\sdk\inc;$(_PUBLICROOT)\common\ddk\inc; \
  ..\..\inc \

SOURCES= \
  init.c \
  memory.c \
  socket.c \
  window.c \


!IF "$(BSP_NOPCMCIA)" == "1"
SKIPBUILD=1
!ENDIF

这是sources的原文件,和上面的有区别,为什么会这样呢?我是用三星的2440BSP新创建的BSP,在新的BSP里文件就变了,是这样吗?
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

10
 
不是你想编译的文件有问题,而是这个文件需要的lib库没有。
这个lib库对应的文件或者(通常)在public下,或者在platform的bsp的common下,或者在某个不常见的地方。
不管在哪里,都需要有一个环境变量来决定将其编译从而生成这个lib。

现在你的project就是没有产生这个“环境变量”,导致该lib没有被编译生成。
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

11
 
引用 9 楼 shuiyan 的回复:
不是你想编译的文件有问题,而是这个文件需要的lib库没有。
这个lib库对应的文件或者(通常)在public下,或者在platform的bsp的common下,或者在某个不常见的地方。
不管在哪里,都需要有一个环境变量来决定将其编译从而生成这个lib。

现在你的project就是没有产生这个“环境变量”,导致该lib没有被编译生成。


这个库我可以找到,在
E:\WINCE500\PLATFORM\new2440\lib\ARMV4I\retail
文件夹下

那怎么产生环境变量呢?
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

12
 
我没有那么厉害,我只是用三星的BSP生成了个新的BSP,我什么文件都没有动.原bSP下的PCMCIA单独编译没问题,新的就有问题.
我不明白,怎么就出问题了,让人恼火啊.PB是怎么编译驱动的呢?从哪里可以看到编译顺序?俺不编译PCMCIA还不行吗?
我上哪里去找了,高人指点.
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

13
 
放假回家了
所以结帖了
有问题回来在向大家请教
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

14
 
楼主问题解决没有,我也碰到这个问题,一筹莫展,请教楼主!
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

15
 
引用 13 楼 vlog_user 的回复:
楼主问题解决没有,我也碰到这个问题,一筹莫展,请教楼主!


呵呵,这个帖子你也发现了,我有一段时间没搞CE了,我记得好像是在source 文件中把不用的库屏蔽掉了比如
SOURCELIBS= \
  $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\cardserv.lib \
如果这个库出问题了,而且我又不用这个库,就屏蔽掉,不记得后来还有没有问题了,呵呵

把文件做备份,之后自己试着修改吧。祝你好运!
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表