WINCE5.0 pddlist.cpp 编译问题

mycmf   2008-7-8 09:47 楼主
我在研究WINCE5.0按键驱动,有一个关于pddlist.cpp的编译
一直没有搞清楚,在这几个目录下都有这个文件
D:\WINCE500\PLATFORM\SMDK2410\SRC\DRIVERS\KEYBD\PDDLIST
D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\KEYBD\DLL\KBD8042
D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\KEYBD\DLL\KBD8042JPN1
D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\KEYBD\DLL\KBD8042JPN2
D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\KEYBD\DLL\KBD8042KOR
D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\KEYBD\DLL\KBD8042US
D:\WINCE500\PUBLIC\COMMON\OAK\DRIVERS\KEYBD\NOP\PDDLIST
那么编译器是根据什么规则决定编译某一个或多个到kbdmouse.dll的?
感觉WINCE的驱动条理性还没有WINDWOS的清晰,可能是初学者吧!!

回复评论 (4)

目录中的编译信息文件,如makefile,sources等
点赞  2008-7-8 10:56
根据PB定制时,选择的组件,组件里面有对应的Variable作为环境变量,编译时,这些环境变量就决定哪些文件被实际编译连接。
点赞  2008-7-8 11:10
请问组件里面有对应的Variable在哪里查找?
点赞  2008-7-8 15:38
是不是这样的,请大家指正一下:

1 在$(TARGETPLATROOT)\CESYSGEN\files\platform.bib中定义了
IF BSP_KBDMOUSE_EVBKPD
    kbdmouse.dll        $(_FLATRELEASEDIR)\KbdUs.dll                NK  SH
ENDIF
指明需要链接的驱动文件名为:KbdUs.DLL
2 在$(TARGETPLATROOT)\SRC\DRIVERS\KEYBD\KbdUS\sources中定义了需要进行
编译和链接的源文件
TARGETLIBS= \
    $(_COMMONSDKROOT)\lib\$(_CPUINDPATH)\coredll.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\ceddk.lib \
    $(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\cspddk.lib


SOURCELIBS=\
    $(_TARGETPLATROOT)\lib\$(_CPUINDPATH)\BSPKeypad.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\LayoutManager.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\InputLang_0409.lib \
    $(_COMMONOAKROOT)\lib\$(_CPUINDPATH)\KeybdIst.lib \
    $(_CSPCOMMONLIB)\$(_CPUINDPATH)\mx27_Keypad.lib \
    $(_CSPCOMMONLIB)\$(_CPUINDPATH)\mx27_PddList.lib
这些LIB对应的.cpp文件就是要进行编译的源文件
点赞  2008-7-8 16:54
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复