创建一个构建框架来支持编译支持多个平台的代码



我正在使用同时支持Linux和Windows平台的代码库。现在,我正在尝试创建一个构建框架,它将允许我用单个命令从命令行编译代码库,无论它是什么平台。就像我试图在Linux下编译它一样,它会说为我创建make文件,如果我在Windows下编译它,它会为我创建Visual Studio项目文件。

有人能给我指正确的方向吗?还有人知道Boost或MySql使用什么系统吗?因为它们也是跨平台的应用程序/库。

谢谢。

CMake将完全按照您的要求执行。也就是说,它将在Windows上创建VS项目,并在*nix平台上创建Makefile。为构建编写配置文件可能需要一些时间来学习,而我从来没有完全适应过。

另一个强有力的候选人是SCons。我喜欢SCons的一点是,它的构建配置完全是用Python完成的。这意味着您可以为非常复杂的构建提供非常优雅的解决方案。如果你有任何Python经验,我强烈推荐你!

更新:刚刚发现了Premake,它的工作原理与CMake相同,但可以在Lua中编写脚本。没有经验,但它听起来像是最好的CMake和SCons在一个健康的包装。

我相信cmake可能是构建特定部分的答案。

一些跨平台框架,特别是Qt,有自己的回答方式。

最新更新