相关疑难解决方法(0)

Visual Studio(.sln)构建运行器和MSBuild之间的差异

我正在尝试将TeamCity设置为使用.Net进行配置并配置我拥有的构建运行程序:

  1. Visual Studio(sln)
  2. 的MSBuild
  3. Visual Studio 2003

有什么不同?为什么三个构建在同一类型的项目上工作?(2003年只有2003年,我相信,为什么?)

考虑到这个问题,我们为.exe文件提供了这个构建运行器:

  1. .NET Process Runner
  2. 命令行

"命令行"构建运行器不适用于任何.net程序集?为什么选择.Net Process Runner?

.net msbuild teamcity continuous-integration visual-studio

21
推荐指数
1
解决办法
1万
查看次数

根据编译器版本有条件地包含源文件?

我们正在测试一个项目设置,该设置要求我们根据编译器的版本包含或排除源文件。测试项目位于 GitHub 上的CRC-Test。对于 PoC,我们正在使用 CRC-32C 开发流程,因为 Intel 和 ARM 都有它。稍后将应用于 AES、CLMUL、SHA、AVX{2}、BMI{2}、ARMv7a NEON、ARMv8 等(MS 编译器通过内在函数支持 NEON 和 ARMv8)。

\n\n

我试图有条件编译的源文件是crc-simd.cpp. 它具有使用 SSE4.2 内在函数和 ARMv8 内在函数的实现(crc.cpp提供通用的 C++ 实现)。

\n\n

我在crc-test.vcxproj添加了一个 VCX 项目文件。有一个ItemGroupfor ClCompile

\n\n
<ItemGroup>\n  <ClCompile Include="main.cpp" >\n    <PrecompiledHeader />\n  </ClCompile>\n  <ClCompile Include="crc.cpp" >\n    <PrecompiledHeader />\n  </ClCompile>\n  <ClCompile Include="crc-simd.cpp" >\n    <PrecompiledHeader />\n  </ClCompile>\n</ItemGroup>\n
Run Code Online (Sandbox Code Playgroud)\n\n

我需要一个条件<ClCompile Include="crc-simd.cpp" >“如果cl.exe是 15.00 或更大,则包含源文件”。在预处理器中我会检查_MSC_VER >= 1500. 在 MSBuild 中,我想我正在寻找类似的东西: …

c++ msbuild visual-studio

4
推荐指数
1
解决办法
1208
查看次数