如何在 Linux 上高效编译 Visual Studio C++ 项目
Posted
技术标签:
【中文标题】如何在 Linux 上高效编译 Visual Studio C++ 项目【英文标题】:How to compile a visual studio c++ project on linux efficiently 【发布时间】:2019-03-24 11:16:56 【问题描述】:我在 Visual Studio 2017 中有一个使用 curl 的 C++ 项目。它在linux机器上编译得很好。但我认为我的程序效率不高。我只是将我的源文件复制到 linux 机器并运行
g++ one.cpp two.cpp etc.cpp -lcurl
甚至
g++ *.cpp -lcurl -o output
有什么办法可以用“酷”的方式做到这一点吗?像 cmake 什么的(对不起,我不喜欢这个)。一个例子真的很有帮助
【问题讨论】:
有 visual studio 代码,您可以使用它在 linux 上编辑和编译 Visual Studio 项目。否则放弃visual studio make buildchain,优先设置一个合理的基于GNU make的构建链。 如果您所说的“酷方式”是指使用 IDE,那么是的,在多个平台上存在一些替代方案。是的,您可以使用 CMake 为 Visual Studio(完整的 IDE)以及其他 IDE 以及普通的 makefile 创建项目。您可能想阅读the documentation 或一些教程。 但是库在 windows (with gnu) 上很麻烦。使用 vcpkg 就像 linux 一样。 【参考方案1】:您的选择范围很广:
继续做你正在做的事情 将该命令封装在一个 shell 脚本中,这样您就不必继续输入它了 制作一个 Makefile 以自动生成该命令 使用 CMake 自动生成 Makefile(或 automake 或其他) 使用 IDE(各种平台的示例:Eclipse、Xcode、Visual Studio)为您全面管理项目,包括构建规则/命令 — Visual Studio Code 在这里可能特别感兴趣选择什么完全取决于您。
就您个人而言,现在我只需将一个 Makefile 放在一起并完成它,直到您的需求变得更加复杂。
你选择后三个选项中的哪一个,网上和你的书中已经有丰富的例子。
我想说,请不要仅仅因为它“酷”就用一个非常复杂的解决方案来解决一个简单的问题,因为那不是酷。
【讨论】:
以上是关于如何在 Linux 上高效编译 Visual Studio C++ 项目的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Mono 编译 Visual Studio C# 项目
如何使用 Visual Studio 2017 Linux 支持编译和构建 C++17 代码?
Linux 用户应该使用哪种 IDE/编译器组合在 Windows 上构建 Qt 应用程序,同时避免使用 MS Visual Studio?
在 Linux 中的 Mono 下,在 Visual Studio / msbuild 中编译的二进制文件是不是 100% 兼容?