多平台c项目

时间:2014-04-29 09:37:31

标签: c multiplatform

我必须设计一个应该在Linux上运行的C项目。我习惯使用Visual Studio或DevC ++在Windows上设计C项目。在Windows上设计项目然后将代码移植到Linux是否可行。是否可以使用Eclipse CDT将编译配置从Windows切换到Linux。我该怎么办?你建议我做什么或搜索什么?

1 个答案:

答案 0 :(得分:2)

这是一个广泛的问题,因为我们没有关于你想要达到的目标的信息。

我可以使用提供的有限信息分享一些指导原则:根据我的经验,在Windows上编写代码然后将其移植到Linux是可行的,尽管您应该期望在Linux / Unix中使用的Microsoft编译器和gcc编译器存在一些差异(通常编译器符合标准的越多,它就越“警告”或者不会接受代码中可疑的东西。

如果您正在处理大量的依赖项/头文件/源代码结构,那么使用像CMake这样的工具来处理所有这些问题(一个可以生成makefile的元生成器和/或视觉工作室解决方案,取决于您在同一组资源中的平台。)

另请注意,您应使用任何与平台相关的API,以便使代码可移植。如果您确实需要,请确保#ifdef您正在编译代码的特定平台的代码部分。

最后,如果您打算在您的应用程序中使用GUI(或者即使您没有计划使用GUI,您仍然可以从包含的各种库中受益),您可以使用像Qt这样的可移植框架,但保留请记住,这需要将应用程序的C部分与C ++(Qt)隔离开来。作为您偏好的另一种选择,您也可以使用GTK +。