gpt4 book ai didi

c++ - 在不安装 Visual Studio 的情况下使用 Microsoft C++ 编译器

转载 作者:IT老高 更新时间:2023-10-28 22:38:55 28 4
gpt4 key购买 nike

在我们的团队中,开发人员都有 Visual Studio 2012,我们也使用 TFS2012 构建。出于空间和可管理性的原因,我们不在我们的(许多)构建代理上安装 Visual Studio。到目前为止,这已与 C# 项目 (csproj) 一起工作。

现在我们要添加对 C++ 项目 (vcxproj) 的支持。这些构建在开发者的机器上,而不是构建代理上——我们得到: X.vcxproj(31,3): error MSB4019: The imported project "C:\Microsoft.Cpp.Default.props" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

我想这是因为 C++ 编译器和目标仅与 VS 一起安装。

  1. 有没有办法只检查编译器和目标,并在我们的 common.targets 中设置一些属性来指向那里?
  2. 如果做不到这一点,我需要在每个构建代理上安装多少才能支持 C++ 编译?我能找到的最少的是 VS Express,这仍然太合我的胃口了。

最佳答案

对于 C# 来说很简单,编译 C# 程序的能力是在 System.CodeDom 框架中与生俱来的,所以只需安装 .NET 就足够了。对于 C++ 而言并非如此。您至少需要安装 Windows SDK,半场演出。这包括低于 8.0 的 SDK 版本中的 C++ 编译器

但是,接下来您会担心如何找到在该机器上获取类库的方法。例如 ATL 和 MFC。你不能只是复制它们,这违反了许可证。更糟糕的是,微软不再像过去那样做生意了。自 VS2012 以来,他们切换到快速发布周期,更新以几个月的方式发布。这些不是您可以忽略的更新,它们添加了相当大的 block 来实现 C++11。绝对是您的 C++ 程序员想要使用的那种。

一般而言,C++ 编译器的 SDK 版本只是与 VS 版本不同步,Windows 团队没有义务保持更新。构建机器应该永远做的一件事是运行一组与程序员使用的构建工具不同的构建工具。这使得开发人员无法复制的构建中断成为一个令人讨厌的争论点。除非你喜欢让你的生活变得复杂,否则信息是明确的。不要这样做,安装VS。

关于c++ - 在不安装 Visual Studio 的情况下使用 Microsoft C++ 编译器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15409908/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com