首页 > 解决方案 > 如何同时构建 x64 和 x86 可执行文件

问题描述

在 dotnet core/.net 5 中是否有可能有一个为 x86 和 x64 构建可执行文件的项目?

一个明显的选择是使用此处建议的两个单独的项目文件:Build both x86 and x64 at .

有替代方案吗?.csproj 文件和 .csproj 文件都<PlatformTargets>x64;x86</PlatformTargets>不会<RuntimeIdentifiers>win-x86;win-x64</RuntimeIdentifiers>产生所需的结果。我什至尝试使用<RuntimeIdentifiers>win-x64;win-x86</RuntimeIdentifiers>似乎没有达到预期效果的发布配置文件。

我希望将这两个文件都作为 nuget 包中的本机项目,所以我认为如果我可以只用一个项目完成所有事情会很好。

更新:我不能使用 AnyCPU,因为它可能与 32 位本机库一起作为 32 位捆绑包提供。AnyCPU 可能会以 64 位运行(JIT 无法检测到任何约束)并且与本机文件不兼容并因此失败。

标签: c#x86nuget64-bit

解决方案


您是否尝试过使用 2 个构建脚本进行构建,然后您可以单独指定“PlatformTargets”。


推荐阅读