Platform Builder命令行构建
我正在使用WinCE平台生成器从命令行构建项目,并且需要启用RTTI,这样我的项目才能正常工作。我尝试在源代码和每个目录的makefile中设置选项" RTTI =" YES`",并且我还尝试将其添加到" CDEFINES"的末尾,但是当我尝试构建项目时,我得到了" D9025"警告,表示我的" / GR被/ GR-覆盖"(启用RTTI被不启用RTTI覆盖)。
我的问题是,如何找出该选项的设置位置,以便可以对其进行修改?
问题是,我们仅将源复制到某些目录,在名为" sources"的文件中指定它们,然后通过发出以下命令继续进行构建:build
我想知道的是,构建从哪里获得它的选项?文件的名称是什么?
解决方案
命令行警告D9025
如果两个选项指定矛盾或者不兼容的指令,则使用在命令行最右边的选项中指定或者隐含的指令。
如果从开发环境进行编译时收到此警告,并且不确定冲突的选项来自何处,请考虑以下事项:
可以在代码中或者在项目的项目设置中指定一个选项。如果查看编译器的命令行属性页,并且在"所有选项"字段中看到冲突的选项,则这些选项在项目的属性页中设置,否则,这些选项在源代码中设置。
如果在项目的属性页中设置了选项,请查看编译器的Preprocessor属性页(在"解决方案资源管理器"中选择了项目节点)。如果未在此处看到设置的选项,请检查每个源代码文件的"预处理器"属性页设置(在"解决方案资源管理器"中),以确保未在其中添加该文件。
如果在代码中设置了选项,则可以在代码中或者在Windows标头中设置。我们可以尝试创建预处理文件(/ P)并在其中搜索符号。
参考:http://msdn.microsoft.com/en-us/library/8k3f51f1(vs.80).aspx
首先查看sources.cmn,这是整个构建系统的通用源文件。如果不存在,请记住,每个SOURCES文件都可以更改其文件夹的编译器变量,此外,makefile文件也可以更改内容。更有趣的是,系统和平台构建批处理文件还可以使用环境变量,从而可以调整设置。