如何裁剪掉directx

slamdunk   2009-2-23 15:11 楼主

定制CE内核时,想裁掉directx相关文件,这些文件都在directx.bib文件中配置。请问我在哪里去设置那些宏开关,使编译时不包含这些文件?

回复评论 (8)

使用PB,在定制系统的时候,将directx相关组件删除,这样可以达到LZ想要的目的。
点赞  2009-2-23 16:49
在右侧的组件里面,楼主慢慢找吧。
点赞  2009-2-23 16:53
引用: 引用 2 楼 gooogleman 的回复:
在右侧的组件里面,楼主慢慢找吧。


应该在左边的组件里吧?

我吧Graphics and Multimedia Technologies item中所有与媒体相关的项都删除了,还是不能裁剪掉,难道还在其他item里?
点赞  2009-2-23 17:44
引用: 引用 3 楼 winamp123 的回复:
引用 2 楼 gooogleman 的回复:
在右侧的组件里面,楼主慢慢找吧。


应该在左边的组件里吧?

我吧Graphics and Multimedia Technologies item中所有与媒体相关的项都删除了,还是不能裁剪掉,难道还在其他item里?


是左边

右边是全部的catalog
点赞  2009-2-23 17:46

我看了C:\WINCE500\PUBLIC\DIRECTX\OAK\FILES\directx.bib文件:

; @CESYSGEN IF QUARTZ_DRMV7
    quartz.dll     $(_FLATRELEASEDIR)\quartz.dll               NK  SHD
; @CESYSGEN ENDIF
; @CESYSGEN IF !QUARTZ_DRMV7
    quartz.dll     $(_FLATRELEASEDIR)\quartz.dll               NK  SH
; @CESYSGEN ENDIF
; @CESYSGEN ENDIF

这说明无论什么情况,都包含了quartz.dll这个组建,是不是就没法裁剪掉directx?
点赞  2009-2-24 10:12
如果你找不到组件在哪里,那你就在Common.bib找到相应的DLL注释掉。这样即使你组件没有去掉也不会打包进NK了。
点赞  2009-2-24 10:31

关键是该项不在common.bib文件里,是在PUBLIC\DIRECTX\OAK\FILES\directx.bib文件里,MAKEIMG时将其打包到ce.bib里面。不像何宗键书上说的就commom.bib,config.bib,project.bib,platform.bib 4文件合并成ce.bib。并且改动后sysgen还不行,必须build and sysgen.
点赞  2009-2-24 15:11
引用: 引用 7 楼 winamp123 的回复:

关键是该项不在common.bib文件里,是在PUBLIC\DIRECTX\OAK\FILES\directx.bib文件里,MAKEIMG时将其打包到ce.bib里面。不像何宗键书上说的就commom.bib,config.bib,project.bib,platform.bib 4文件合并成ce.bib。并且改动后sysgen还不行,必须build and sysgen.


那就在工程目录下改动啊。就是生成NK.bin所在地方,修改对应的BIB,不信删除不了。
点赞  2009-2-24 15:23
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复