我有一些在Visual Studio中无法很好执行的事情:
预构建步骤调用代码生成器生成一些源文件,稍后编译这些文件。可以通过向项目添加空文件(稍后用真正生成的文件替换)来解决这个问题,但如果我不知道自动生成的源文件的名称和/或数量,则无法解决。在
GNU make
中,我可以使用$(wildcard generated/*.c)
轻松解决它。如何在Visual Studio中实现类似的功能?如果文件不需要修改,我能否防止预构建/后构建事件运行(类似于“make”行为)?当前的解决方法是编写一个包装脚本来检查时间戳,这有效,但有点笨重。
定位在VS之外安装的外部库和头文件的好方法是什么?在*nix情况下,它们通常安装在系统路径中,或者使用
autoconf
定位。我想我可以在项目设置中使用用户定义的宏指定路径,但是放置这些宏的好地方在哪里,以便可以轻松找到并进行调整?
只是为了明确,我知道存在更好的Windows构建系统(例如CMake
,SCons
),但它们通常自己生成VS项目文件,并且我需要将此项目集成到现有的VS构建系统中,因此最好只使用普通的VS项目文件,而不是生成的文件。
.vsprops
文件是更好的选择。 - 0xC0000022L