将Visual Studio C++移植到Linux

MBZ*_*MBZ 11 c++ linux windows visual-studio-2010

我们有一个不太复杂但很大(即很多文件)的Visual Studio C++ Win32控制台,在VS2010中用C++ 0x标准编写.它不使用任何非标准代码或任何东西(希望!).

我现在想把它移植到Linux上.哪种方式最快的方法呢?autoconf的?老式的make文件?还有其他方法吗?

Ama*_*9MF 7

我会使用常规make,但尽可能使用默认规则保持简单.随着时间的推移添加依赖项.

编辑: 在临时步骤中,使用mingw构建它,以便在新构建机制中有可用的构建之前,可以避免整个API移植问题.

如果您的控制台应用程序调用win32 API函数,那么您可以选择修改使用它的所有源代码还是编写实现这些函数的模块.

在此类型的先前移植工作中,我尝试了两种方式,后者更容易.我最终只写了大约18到20个垫片函数.

这是成功的,我最终编写了一个操作系统抽象层,用于许多项目,只需让我在Windows native,cygwin,Linux,VxWorks等上编译,只需对一个或两个文件进行微小的更改.

(ps)对基于C++的操作系统抽象层的开源版本感兴趣吗?如果有足够的兴趣,我会考虑向全世界发布它的无阻碍版本.它在BOOST太重的情况下非常有用 - 即嵌入式项目.)