gpt4 book ai didi

c++ - 在 Windows 和 Linux 上构建 C++

转载 作者:可可西里 更新时间:2023-11-01 15:40:39 27 4
gpt4 key购买 nike

我参与了针对 Windows 和 Linux (RHEL) 平台的 C++ 项目。到目前为止,开发完全是在 Visual Studio 2008 上完成的。对于 Linux 编译,我们使用了第 3 方 Visual Studio 插件,它读取 VS 解决方案/perojects 文件并在 Linux 机器上远程编译。

最近决定放弃第 3 方插件。

现在我最关心的是构建系统。我四处寻找跨平台构建工具。这样我就不需要维护两组构建文件(例如,Windows 的 vcproj/solution 和 Linux 的 make 文件)。

我找到了以下候选人:一个。烤饼b.制作

您如何看待跨平台开发工具?

另一点困扰我的是,如果没有 vcproj 文件,Visual Studio(+ Visual Assist)将失去很多功能 - 你如何使用这些工具处理这个问题?

谢谢迪马

PS 1:我喜欢 Scons 的一点是它(a) 使用 python,因此它很灵活,而 cmake 使用专有语言(我知道它不是构建系统的赢家功能)(b) 自包含(不需要像 cmake 那样在 Linux 上生成 makefile)。

那么为什么不使用 Scons?为什么在您的项目中决定使用 cmake?

最佳答案

CMake 将允许您仍然使用 Visual Studio 解决方案和项目文件。 Cmake 本身并不构建源代码,而是为您生成构建文件。对于 Linux,这可以是 Code::Blocks、KDevelop 或普通 makefile 或其他更深奥的选择。对于 Windows,它可以是其他 Visual Studio 项目文件,对于 MacOS 也可以是其他文件。因此,Visual Studio 解决方案和项目是从您的 CMakeLists.txt 创建的。这适用于大型项目。例如。当前的 Ogre3d 在所有平台(Windows、Linux、MacOS 和 IPhone)上都使用 CMake,并且效果非常好。

虽然我在这方面对 scons 了解不多,但我只用于构建一个库,而且只在 Linux 中。所以我不能公平地比较这两个。但是对于我们的多平台项目来说,CMake 已经足够强大了。

关于c++ - 在 Windows 和 Linux 上构建 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1106893/

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