从 Visual Studio 2008 解决方案创建 Unix makefile

Posted

技术标签:

【中文标题】从 Visual Studio 2008 解决方案创建 Unix makefile【英文标题】:Create Unix makefile from Visual Studio 2008 Solution 【发布时间】:2015-01-21 08:42:16 【问题描述】:

我正在使用 Visual Studio 2008 编写 C++ 静态库。我的静态库需要由 Windows 和 Linux (Red Hat) 的不同可执行文件加载

现在,对于 windows 构建我没有任何问题,因为我正在使用它的环境进行开发(正如我在 Win 8 上已经说过的 VS 2008)。

我在 Linux 上移动代码时出现了问题。 真诚地,我不知道什么是更好的解决方案。

所以我在这里问几个问题以寻找正确的选择:

我应该使用一些工具在 Windows 上编译我的可执行文件来为 linux 构建版本吗?这甚至可能吗?什么工具?我尝试了 Cmake,但我没有找到方法。

我应该在 Windows 上编译我的 lib,在我的 Linux 系统上传输它,然后在 Linux 中编译一个加载我的静态库的可执行文件吗?

是否有一种工具可以仅将我的 vcproj 转换为 makefile?所以在windows中我只生成makefile,发送到Linux系统,然后编译一切?

真正的问题是我对makefile没有那么自信,这个项目真的很大,从头开始创建我自己的makefile是我最后可能的选择,我想避免它,因为有很多工作要做这可能很耗时

提前致谢!

【问题讨论】:

你已经有了VS解决方案,否则我会推荐可以为你生成解决方案文件和makefile的工具,例如CMake。 好的,我再看看Cmake!谢谢 CMake 将有助于您使用第三个要点。该过程将是您(手动)将您的解决方案“转换”为 CMakeList 文件。从此文件中,您可以生成 Visual Studio 解决方案、Makefile、Ninja 文件、XCode 项目或 ... @FredMaggiowski 理论上你可以在 Linux 下使用 mingw 编译你的库,这样它就可以在 Windows 中运行。因此,您只需要一台主机即可为两个平台发布版本。请参阅此blog post 了解一下。 CMake 应该是这个概念的一部分。看到这个article。 已经在这里回答了:***.com/questions/6649606/vcxproj-to-cmake 【参考方案1】:

在寻找正确选择的旅程结束时,我找到了最适合我需求的解决方案。

我所做的是使用 Make It So 为我的解决方案中的每个项目创建 makefile,然后将 makefile 与源代码一起传输,在对 makefile 进行一些自定义以满足我的需要之后,我顺利地编译了我的代码。

感谢那些发表评论的人,你们在我的研究中帮助了我!

干杯!

【讨论】:

以上是关于从 Visual Studio 2008 解决方案创建 Unix makefile的主要内容,如果未能解决你的问题,请参考以下文章

从 Visual Studio 2008 迁移到 2015

从 Visual Studio 2005 迁移到 2008 和 .NET 2.0

从 Visual Studio C++ 6.0 到 VS 2008?

从 Visual Studio 2008 升级到 Visual Studio 2010 速成版

自动分析 Visual Studio 2008

visual studio 2008 - 构建问题