2

我敢肯定这已经被问过,有近 90 万个问题,很难找到东西 :)

我们正在启动一个项目,我们希望我们的 C++ 和 Python 既可以在 Unix 环境下运行,也可以在 Windows 下运行。作为开发人员,我们希望使我们的项目易于为项目做出贡献,因此我们希望让每一方都感觉“自然”。

在这种情况下,在 Unix 下,它是 automake/autoconf/etc。在 Windows 下,除了 Visual Studio 项目文件之外的任何内容似乎都是错误的。这主要是因为我们希望 Windows 原生黑客能够在他们的自然环境中轻松开发。

今天人们是怎么做这种事情的?Windows 编码人员在非 GUI 世界中是否感到自在,所以我们太努力了?

另一个目标是我们需要对我们的项目进行自动化测试,最好在所有平台上使用相同的测试代码(google-test)等。不过,这可能是另一个问题的问题。

4

1 回答 1

2

多平台开发可能是一个棘手的情况。以下是我们为简化流程所做的一些事情:

  1. 源代码控制(这很明显,一个可靠的代码库,适用于 Windows 和 Linux,我们使用 SubVersion)
  2. 创建标准(我们所有的 Makefile 看起来都一样,并且很容易实现,就像我们用于 Visual Studio 的 .sln 文件一样)
  3. 经常在所有平台上构建应用程序
  4. 注意像 QT 这样的跨库使用以及 Windows 和 Linux 之间可能包含的任何怪癖
  5. 有时你无法避免它:#ifndef 执行一些特定于平台的代码

我们在 Windows、Sun 和 Linux (RedHat) 中开发多个基于可视化和命令行的应用程序。我希望这会有所帮助!

于 2010-09-02T17:25:06.750 回答