在对工程添加了新的模块之后(包括顶级模块以及子级模块,也包括全局包含头文件目录),可以用make upgrade命令来对工程进行更新,并且不用担心原有的模块会被破坏,更不会对原有模块的源文件进行更改,而只会负责添加新的模块单元,建立符合Demotop编译工程规范的模块。
具体是在工程顶层Makefile文件中,在模块配置变量中添加相应的顶级或者子级模块名称,然后,执行make upgrade命令,即可在模块目录结构中生成新的模块目录结构,其中包括了模块的Makefile编译文件,该文件是根据模块配置自动生成,无需修改。在添加生成了相应的模块结构之后,开发人员即可在该模块目录中建立相应的模块源文件进行模块开发。
如果需要删除相应的模块,只需要改变工程顶层Makefile文件中的模块注册结构,即删除相应的模块名称即可。模块中的源文件并不会被自动删除,而需要手动删除。即使模块源文件未被删除,该模块也不再被编译系统管理控制。 9 make auto
编译系统在编译过程中依赖于各个模块个的各个目录中的不同作用的Makefile编译文件,因此,Demotop编译系统专门设计了相应的Makefile自动生成命令来完成这些工作,即编译系统会根据用户之前配置好的多级模块之间的组织关系,来自动完成工程中的多级模块的Makefile生成配置。
具体使用的命令是make auto,该命令并不是必须被使用到的命令,因为在对整个工程进行编译的时候(即使用工程顶层的make命令,make vxWorks等命令时),会自动完成各级模块的Makefile文件的生成,但是如果在各级模块中的Makefile文件还未生成之前,希望对单模块进行编译调试,则必须首先使用make auto命令。 10 make lib
make lib命令用于仅编译工程中的所有模块生成相应的库文件,所模块的库文件出现在工程的build目录中; 11 make compress
对vxworks镜像文件或者linux应用目标文件进行压缩,压缩的方式在相应操作系统平台OS_TYPE对于的Make.config-中进行定义; 12 make tool
make debug命令用于对工程目标镜像文件的反汇编调试,该命令会将输入的字符串进行反汇编查询,主要包括正对特定地址以及函数的查询。典型的应用为,当系统运行出现异常时,可以根据异常信息中的寄存器RA返回地址,使用该命令进行异常定位,获取异常函数名称,进而帮助开发人员定位可能出错的函数位置。例如,执行“make debug 12c110”命令,可以定位反汇编的地址为0x0012c110的汇编程序,如果目标镜像带符号表,那么可以精确定位该地址的函数名,协助开发人员调试,如下图所示:
注意,该命令将自动显示上下文,上下文的行数在Make.config文件中定义,默认为上文15行,下文5行。 4 make file
make file命令用于快速打开工程顶层Makefile文件并进行编辑,根据主机环境不同,可以支持GUI编辑工具或者命令行编辑工具,如果同时支持上述两种编辑工具,可以在Make.config文件中设置优先使用的编辑工具; 5 make app
make app命令用于快速打开工程应用程序初始化入口源文件并进行编辑,根据主机环境不同,可以支持GUI编辑工具或者命令行编辑工具,如果同时支持上述两种编辑工具,可以在Make.config文件中设置优先使用的编辑工具; 6 make compo
make compo命令用于在VxWorks操作系统平台下时,快速打开VxWorks组件管理文件并进行编辑,根据主机环境不同,可以支持GUI编辑工具或者命令行编辑工具,如果同时支持上述两种编辑工具,可以在Make.config文件中设置优先使用的编辑工具; 7 make param
make param命令用于在VxWorks操作系统平台下时,快速打开VxWorks组件参数管理文件并进行编辑,根据主机环境不同,可以支持GUI编辑工具或者命令行编辑工具,如果同时支持上述两种编辑工具,可以在Make.config文件中设置优先使用的编辑工具; 8 make config
make config命令用于快速打开Make.config文件并进行编辑,根据主机环境不同,可以支持GUI编辑工具或者命令行编辑工具,如果同时支持上述两种编辑工具,可以在Make.config文件中设置优先使用的编辑工具; 9 make osconfig
make osconfig命令用于快速打开Make.config-文件并进行编辑,根据主机环境不同,可以支持GUI编辑工具或者命令行编辑工具,如果同时支持上述两种编辑工具,可以在Make.config文件中设置优先使用的编辑工具; 10 make bootrom
make bootrom命令用于在VxWorks操作系统平台下,编译VxWorks BSP的bootrom.bin,该bootrom.bin可以作为vxWorks镜像引导的bootloader烧录到系统的boot Flash芯片中; 11 make tree
make tree命令用于显示当前工程的树结构,如果demotop编译系统所运行的主机环境并不支持tree命令,那么无法执行make tree命令,该命令将不会在帮助命令中显示。下图所执行的该命令显示的是新建时的工程树结构图,以及为各个模块自动生成Makefile编译文件如下图所示: