新手在这里。我在visual studio 2010中制作了一个项目,它完美无缺。现在我需要在运行ubuntu的机器中编译和运行此代码。是否有一些导出/导入方法,或者它是如何工作的(当然假设这样的事情是可能的)。
我在想的是在visual studio中制作一个makefile,然后在ubuntu中获取代码并编译它?这样的事情有意义吗?
提前谢谢。
答案 0 :(得分:4)
在理想的世界中,代码独立于任何IDE或构建链,这使得自己的元数据保持不变。 Windows不适合Linux。
另一方面,如果使用CMake或类似的东西设置项目,那么就可以像为Linux makefile一样轻松地为给定的代码库生成Visual Studio项目。
您不需要更改很多代码本身。或者,至少你应该知道什么是特定于Windows的。你可能不得不花费一些精力来创建你的CMakeList.txt或者你最终使用的东西,但是一旦你熟悉它就很容易。
答案 1 :(得分:3)
如果你的意思是采用Visual Studio源代码并在Linux上编译它:答案是肯定的,尽管从 0 到可能有很多工作要做代码编译正确并运行。这一切都取决于编程选择。遗憾的是,Visual Studio的标准做法通常是使用大多数特定于Microsoft的API功能,因此极大地复制了到POSIX或Linux环境的移植。可以使大多数非GUI选择非常便携,但是除非使用跨平台GUI API,否则GUI密集型程序的可移植性最低。
如果您的意思是从Visual Studio中获取生成的.exe
文件输出并在Linux上运行,那通常很多更容易。安装Wine package,(yum install wine
或Ubuntu等效项)并使用wine program.exe
启动程序。我用这种方式运行Windows程序非常好运(98 +%)。主要的例外是Microsoft软件:特别是Visual Studio使用了许多非标准的Windows API操作,以至于Wine开发人员称之为VS的支持级别"garbage",这是一个令人惊讶的异常值,考虑到表现良好的Windows游戏的数量并直接在Wine下运行。