首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >C++可移植开源应用程序的最佳实践

C++可移植开源应用程序的最佳实践
EN

Stack Overflow用户
提问于 2009-03-26 03:47:24
回答 6查看 1.5K关注 0票数 8

我将在C++中启动一个开源的跨平台项目。我的开发环境是Linux。也可能有其他开发人员从不同的平台进行开发。因此,在开始配置和开发环境设置时,我需要一些帮助,这样来自多个平台的所有开发人员都可以轻松地开发。

以下是我的问题

  1. 编译器:我计划使用g++,听说它是跨平台的。这是个不错的选择吗?
  2. Make files :我看过Code::块编辑器,它动态生成make文件,您不必手动编写。这是最佳实践吗,还是我需要创建生成文件?
  3. 在开发跨平台应用程序时,需要注意的其他设置是什么?

有什么想法吗?

编辑

谢谢你的回答。还有一个问题。

你是手工制作的吗?或者是否有任何工具可以生成它?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2009-03-26 04:03:31

对于您的项目来说,最重要的是可移植性。对每个人来说,建造和运行都应该很容易。

GCC (g++)确实是首选的编译器。它来自开源世界,因此被它广泛采用。

然而,一个简单的Makefile并不会削减它的。使用CodeBlocks或任何其他IDE生成它有一个问题:由于他们的平台,其他开发人员可能不得不生成自己的平台,但不一定有CodeBlocks,或者只是不想使用它。

有几种不同的跨平台构建系统,它们与IDE无关.其中一些创建Makefile,另一些则不使用make,而是自己构建。

  • 最广泛采用的构建系统是自动工具。然而,它是很难学习,混乱,和一个整体痛苦的屁股。
  • 在许多其他选择中,我推荐 Waf。几个较大的开源项目已经证明了这一点,XMMS2就是一个很好的例子(虽然它不是一个很受欢迎的项目,但它有大量的插件和构建在许多平台上,包括OS和Windows)。虽然waf并没有被广泛采用,但是它是与源代码一起发布的,并且易于设置。我给你的推荐。

编辑:要开始您的开源项目,我还推荐Karl的这本书 (可在线阅读)。玩得开心!

票数 7
EN

Stack Overflow用户

发布于 2009-03-26 04:02:20

根据具体平台的不同,Qt可以掌握答案。尤其是有了新执照。

票数 2
EN

Stack Overflow用户

发布于 2009-03-26 04:02:55

  • 现在就开始在多个平台上构建:它很早就暴露了问题。
  • 如果您只关心Linux和Mac,那么g++就应该很好。有各种各样的IDE和构建系统可用。您可能需要考虑使用自动工具来帮助配置支持。
  • 如果您想以Windows为目标,它会变得更复杂一些。您可以使用cygwin和/或mingw,但有时会很复杂。各种项目使用跨平台构建和配置系统(如CMake )来解决许多问题。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/684449

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档