阅读:3316回复:8
build命令及相关命令请教
用DDK做驱动,既然DDK是基于命令行的,那么除了build还有什么命令呢。build -cz是什么意思,cz是什么意思
经过一些配置、调试可以用vc集成环境开发驱动了,但vc这个集成环境对于驱动开发有什么意义呢,都可以做什么呢,除了可以在其中写代码外还能做什么。 |
|
沙发#
发布于:2004-11-11 13:04
什么意思可以看帮助 build -?
实际上在VC里编译的主要是DS开发的WDM驱动, 是因为DS使用了C++的类,把驱动封装成类,而借用了VC的环境 还有一种就是DDK下的例子可以通过转换变成VC的一个工程, 在VC里使用DDK的build.exe编译, 我感觉没什么意义,不如直接用DDK的Build.exe编译呢 |
|
|
板凳#
发布于:2004-11-11 13:06
Usage: BUILD [-?] display this message
[-#] force _objects.mac to be regenerated [-0] pass 0 generation only, no compile, no link [-2] same as old -Z (only do a 2 pass build - no pass 0) [-3] same as -Z [-a] allows synchronized blocks and drains during link pass [-b] displays full error message text (doesn't truncate) [-c] deletes all object files [-C] deletes all .lib files only [-D] check dependencies before building (on by default if BUILD_PRODUCT != NT) [-e] generates build.log, build.wrn & build.err files [-E] always keep the log/wrn/err files (use with -z) [-f] force rescan of all source and include files [-F] when displaying errors/warnings to stdout, print the full path [-G] enables target specific dirs files iff one target [-i] ignore extraneous compiler warning messages [-I] do not display thread index if multiprocessor build [-k] keep (don't delete) out-of-date targets [-l] link only, no compiles [-L] compile only, no link phase [-m] run build in the idle priority class [-M [n]] Multiprocessor build (for MP machines) [-o] display out-of-date files [-O] generate obj\_objects.mac file for current directory [-p] pause' before compile and link phases [-P] Print elapsed time after every directory [-q] query only, don't run NMAKE [-r dirPath] restarts clean build at specified directory path [-s] display status line at top of display [-S] display status line with include file line counts [-t] display the first level of the dependency tree [-T] display the complete dependency tree [-$] display the complete dependency tree hierarchically [-u] display unused BUILD_OPTIONS [-v] enable include file version checking [-w] show warnings on screen [-y] show files scanned [-z] no dependency checking or scanning of source files - one pass compile/link [-Z] no dependency checking or scanning of source files - three passes [-why] list reasons for building targets [-386] build targets for 32-bit Intel [-x86] Same as -i386 [-ia64] build targets for IA64 [-amd64] build targets for AMD64 [-x filename] exclude include file from dependency checks [-j filename] use 'filename' as the name for log files [-jpath pathname] use 'pathname' as the path for log files instead of ". " [-nmake arg] argument to pass to NMAKE [-clean] equivalent to '-nmake clean' Non-switch parameters specify additional source directories * builds all optional source directories BUILD: Done |
|
|
地板#
发布于:2004-11-11 15:10
还有一种就是DDK下的例子可以通过转换变成VC的一个工程, 转换成一个工程后到底有什么意义呢,为了理解,我想我还是试着实施一便吧,我主要是想理解那些.c .cpp .h文件是如何组织,你知道哪个文件是负责组织的吗。 |
|
地下室#
发布于:2004-11-11 15:51
ddk里是source文件
VC里是*.dsp或者导出makefile文件 方法: DS有个工具叫source to DSP converter 运行它,open ddk的source文件 执行convert source 即在该目录生成了VC的工程文件了 |
|
|
5楼#
发布于:2004-11-16 16:27
不好使呀,我用source to dsp converter 打开sources文件,然后点create,显示错误信息:Warning: directive not evaluated: "!IF 0"Fatal Error: DYNLINKis not a supported TARGETTYPE
|
|
6楼#
发布于:2004-11-16 16:42
按照驱网的一些介绍调配的文章使驱动能够在VC中编译开发。配置好后在VC中就可以调试吗,调试是不是还得用SOFTICE。
|
|
7楼#
发布于:2010-05-05 20:35
推荐使用命令:bld
有颜色高亮显示。 |
|
|
8楼#
发布于:2010-05-05 20:39
C:\WinDDK\7600.16385.1>bld /?
BUILD: Version 6.1.7063.0 Usage: BUILD [-?] display this message [/#] force _objects.mac to be regenerated [/0] pass 0 generation only, no compile, no link [/2] same as old /Z (only do a 2 pass build - no pass 0) [/3] same as /Z [/a] allows synchronized blocks and drains during link pass displays full error message text (doesn't truncate) [/B [baseline]] Checks the build failures against a baseline If there is no baseline,terminates the build on the first error [/c] deletes all object files [/C] deletes all .lib files only [/D] check dependencies before building (on by default if BUILD_PRODUCT != NT) [/e] generates build.log, build.wrn & build.err files [/E] always keep the log/wrn/err files (use with /z) [/f] force rescan of all source and include files [/F] when displaying errors/warnings to stdout, print the full path [/g] Display warnings/errors/summary in color [/h] Hide console output [/G] enables target specific dirs files iff one target ignore extraneous dependency warning messages [/I] do not display thread index if multiprocessor build [/j filename] use L'filename' as the name for log files [/k] keep (don't delete) out-of-date targets [/l] link only, no compiles [/L] compile only, no link phase [/m] run build in the idle priority class [/M [n]] Multiprocessor build (for MP machines. Max. 64) [/n] No SYNCHRONIZE_BLOCK and SYNCHRONIZE_DRAIN directives [/o] display out-of-date files [/O] generate $(O)\_objects.mac file for current directory [/p] pause' before compile and link phases [/P] Print elapsed time after every directory [/q] query only, don't run NMAKE [/r dirPath] restarts clean build at specified directory path [/s] display status line at top of display [/S] display status line with include file line counts [/t] display the first level of the dependency tree [/T] display the complete dependency tree [/$] display the complete dependency tree hierarchically display unused BUILD_OPTIONS [/v] enable include file version checking [/w] show warnings on screen [/x filename] exclude include file from dependency checks [/X] generates XML log file [/y] show files scanned [/Z] no dependency checking or scanning of source files - three passes [/z] same as /Z [/why] list reasons for building targets [/sharedpch] ignore pch time stamp during dependency check- has no effect with /clean [/386] build targets for 32-bit Intel [/x86] Same as /i386 [/ia64] build targets for IA64 [/amd64] build targets for AMD64 [/arm] build targets for ARM [/jpath pathname] use L'pathname' as the path for log files instead of " ." [/nmake arg] argument to pass to NMAKE [/getperf] do not generate the build performance [/findBottleNecks] Finds perf bottlesnecks during build and logs the state of build during these bottlenecks [/getslowestdirs] [N] Gives the N slowest dirs in the tree.If N is not provided it defaults to 10 [/skiptestcode] Skips sources marked as TEST_CODE=1 Can also be set by defining BUILD_SKIP_TEST_CODE=1 [/DirInclude:[!]<type>,<type>]. Build includes (or excludes) directories of the types listed in <type>. Types are specified in dirs files. Valid types are Product, Test, Tool /DirInclude:!Test,Tool = Build all but Test & Tool /DirInclude:Test = Build only test Can also be set using BUILD_DIRINCLUDE= [/ManifestCompilation] Just compiles and validates manifests [/nosqm] Do not report build usage data to Microsoft. [/VerifySync] Validates synchronization. Detects duplicate or non-existent produce macros, wrong ordering, etc. Non-switch parameters specify additional source directories * builds all optional source directories ~<DirName> Excludes all the directories with name equal to DirName !<Relative path\DirName> Excludes just the exact directory specified . The path given is relative to Dir from where build.exe is launched |
|
|