![]() |
1
7
对于您的项目来说,最重要的是可移植性。应该很容易为每个人构建和运行。 gcc(g++)确实是首选的编译器。它来自开源世界,因此被它广泛采用。 然而, 一个简单的makefile不能剪切它 . 使用代码块或任何其他IDE生成它都有一个问题:由于他们的平台,其他开发人员可能需要生成自己的代码块,但不一定手头有代码块,或者只是不想使用它。 存在几种不同的跨平台构建系统,它们是不可知IDE的。他们中的一些人创建makefile,其他人不使用make,而是自己构建。
编辑: 为了开始您的开源项目,我还建议 this book 作者:Karl Fogel(可在线阅读)。玩得高兴! |
![]() |
2
3
GNU C++编译器是跨平台工作的一个比较好的选择,除了在Windows上只支持一个相对旧的版本(3.4)。将4.x系列移植到Windows的工作正在进行中,但到目前为止还没有准备好迎接黄金时段。 我不再关注要使用的编译器,而是关注要使用的语言。编写ANSI标准C++将有助于实现代码交叉平台。尽可能将平台特定的行为隐藏在一个好的工具箱(如qt)后面。 对于跨平台构建环境,这可能取决于您使用的工具箱。qt有qmake,比较好。Cmake是另一个令人信服的选择。我会避免使用自动工具,因为它在UNIX之外的可移植性非常差——在win32上使用自动工具常常是该死的人的痛苦。 最后,开始在多个平台上工作 现在。 对于这样的事情,vmware是无价的。让您的代码在Linux、FreeBSD和Windows上编译。如果你能达到这三个目标,那么在未来转移到其他平台将会非常容易。 |
![]() |
3
2
|
![]() |
4
2
根据具体的平台, Qt 可以保留答案。尤其是新执照。 |
![]() |
5
1
|
![]() |
6
1
是的,但是哪个版本?您是否有要使用的版本的已知问题列表?
经典的选择。当项目增长时,您可能需要调整它们。
G++/makefile端口可用于任何主要平台。因此,一旦确定没有使用任何平台特定的API或构造,就应该很好地完成了。 下面怎么办?
|
![]() |
George S. · 是否存在基于元组的控制流语句内部表示? 7 年前 |
![]() |
FlatAssembler · 在x86程序集中计算exp(x) 7 年前 |
![]() |
cib · 即时编译和动态编译有什么区别? 7 年前 |
![]() |
Artemis · 寄存器与指令之间的差异 7 年前 |
![]() |
Sam · 了解go工具编译和链接命令 7 年前 |