是否可以为调试版本和发行版本提供不同的可执行文件名称?可执行文件应该被复制到相同的输出目录例如C++ Builder XE2 - 用于调试版本和发行版本的不同可执行文件名称
C:\项目\世界您好\ BIN
在我要输出两个文件这个特例:
C:\项目\你好世界\ BIN \ 你好world.exe
和
C:\项目\世界您好\ BIN \ 你好worldD.exe
是否可以为调试版本和发行版本提供不同的可执行文件名称?可执行文件应该被复制到相同的输出目录例如C++ Builder XE2 - 用于调试版本和发行版本的不同可执行文件名称
C:\项目\世界您好\ BIN
在我要输出两个文件这个特例:
C:\项目\你好世界\ BIN \ 你好world.exe
和
C:\项目\世界您好\ BIN \ 你好worldD.exe
可以使用Post-Build事件在编译完成后重命名可执行文件。不同的构建配置可以定义不同的事件。
在我的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窗体应用程序,我可以将其设置为Debug Win32的配置是这样的:
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<OutputName>testmyapp</OutputName>
<snip>
很明显,你会想复制这条线在适当的PropertyGroup
元素。如果这没有意义,我建议阅读MSBuild属性组和条件如何工作,因为这是Embarcadero构建系统的基础。
如果这种整体局面困扰你,我建议投票支持,我在这里创建了功能要求:https://quality.embarcadero.com/browse/RSP-13108
如果重命名或移动(不要复制)在后期生成的可执行文件,你可以不再按F9运行/调试它,因为IDE需要原始名称:/我想知道为什么您不能再像在BCB中一样调整XE中的输出可执行文件名称。你可以在大多数或所有其他环境中执行它......看起来像命令行链接程序ilink32允许这样做,但我不知道是否可以在IDE /项目设置中配置它。无论如何,它很可能会混淆IDE,就像移动/重命名一样。 – dolphin 2014-11-27 21:58:46