C++ Builder XE2 - 调试版本和发布版本的可执行文件名称不同

问题描述 投票:0回答:2

调试版和发布版是否可以有不同的可执行文件名称?例如,可执行文件应复制到同一输出目录

C:\Projects\Hello world in

在这种特殊情况下,我想输出两个文件:

C:\Projects\Hello world in\ Hello world.exe

C:\Projects\Hello world in\ Hello worldD.exe

linker executable c++builder-xe2
2个回答
1
投票

您可以使用 Post-Build 事件在编译后重命名可执行文件。 不同的构建配置可以定义不同的事件。


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 表单应用程序上,我能够将其设置为调试 Win32 配置,如下所示:

<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
    <OutputName>testmyapp</OutputName>
    <snip>

显然,您需要在适当的

PropertyGroup
元素中复制此行。 如果这没有意义,我建议阅读 MSBuild 属性组和条件的工作原理,因为这是 Embarcadero 的构建系统的基础。

如果整个情况让您感到困扰,我建议对我在此处创建的功能请求进行投票:https://quality.embarcadero.com/browse/RSP-13108

© www.soinside.com 2019 - 2024. All rights reserved.