是否可以为调试版和发行版提供不同的可执行文件名?应将可执行文件复制到相同的输出目录,例如
C:\ Projects \ Hello world \ bin
在这种特殊情况下,我想输出两个文件:
C:\ Projects \ Hello world \ bin \ Hello world.exe
和
C:\ Projects \ Hello world \ bin \ Hello worldD.exe
答案 0 :(得分:1)
您可以使用构建后事件在编译后重命名该可执行文件。不同的构建配置可以定义不同的事件。
答案 1 :(得分:1)
在我的C ++ Builder XE8安装中,似乎有一种更简洁的方法,尽管它无法通过IDE设置。而且,如其他地方所述,调试似乎仍然存在。
从我安装的副本上的CodeGear.Cpp.Targets
文件中,我们有:
<!-- Output Directories and Filenames -->
<OutputName Condition="'$(OutputName)'==''">$(MSBuildProjectName)</OutputName>
<FinalOutput Condition="'$(FinalOutput)'==''">$(FinalOutputDir)$(DllPrefix)$(OutputName)$(DllSuffix)$(OutputExt)$(DllVersion)</FinalOutput>
因此,您可以自己设置OutputName属性,以便在每个配置的基础上更改输出文件名。
例如,在一个简单的VCL Forms Application上,我能够为Debug Win32配置设置它,如下所示:
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<OutputName>testmyapp</OutputName>
<snip>
显然,您希望在相应的PropertyGroup
元素中复制此行。如果这没有意义,我建议阅读MSBuild属性组和条件如何工作,因为这是Embarcadero的构建系统所基于的。
如果整个情况困扰您,我建议投票支持我在此处创建的功能请求:https://quality.embarcadero.com/browse/RSP-13108