首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Windows上的compiling+distributing Linux代码

Windows上的compiling+distributing Linux代码
EN

Stack Overflow用户
提问于 2012-07-03 23:29:09
回答 1查看 530关注 0票数 2

我有一个在Linux上运行的更大的代码,是用c++ (c++11)和python编写的,使用了很多库(VTK、boost、pyqt、OpenGL),并编译成python扩展模块(以及这些模块的插件)和纯python模块(主程序是一个python脚本)。代码是跨平台的(除了一些例外,比如dlopengettimeofday,它可以通过#ifdef‘s替换为windows的等价物)和编译器无关(它使用-ansi编译,如果需要,也可以替换一些编译器特定的东西,比如__attribute__ )。

我正在考虑尝试在Windows上编译,但我完全不知道该如何进行(我在Linux开发方面相当有经验,但我自90年代末以来就没有使用过Windows )。

我应该选择mingw还是MSVC编译器?交叉编译会不会更好?我是否需要通过从web上下载安装程序来“手动”安装依赖项;我是否也需要编译这些依赖项?是否有包含文件的标准路径,还是要检测所有包含文件的路径?如果我设法编译它,如何制作某种包(它是纯python模块和共享库的捆绑包)?

我想我不是第一个试图了解它在Windows下如何工作的人(我估计我被Linux中的包管理器和所有对开发人员友好的东西宠坏了),也许有一些有用的参考资料。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-07-05 23:46:19

我认为你在这里的选择取决于你在Windows下编译的目标。您是否准备让其他可以选择其开发平台的开发人员参与进来?是否要使用不同的编译器生成其他警告?您是否希望在windows平台上部署该应用程序?问这些问题应该能帮助你做出更明智的决定。

这里有一些建议。

  • 试试MSVC也没什么坏处。2010速成版是支持标准C++开发的最后一个免费版本。未来的express版本只适用于"Metro“应用程序。我会权衡一下你的Windows开发目标,选择accordingly.
  • For一个跨平台的构建,看看你是否能实现一个标准化的构建系统,比如CMake或SCons。
  • 我不会附带依赖项,不管最后的决定是什么。要求开发人员单独下载依赖项是开源的标准实践。只要确保包含任何当前稳定版本与您的应用程序不向后兼容的版本信息。(或者更好的是,修复这些问题,这样您就可以从第三方代码的最新修复中获益。)至少,Python应该是开发人员的责任。它是要安装的,并且pywin32扩展将在Windows installation.
  • As上的系统注册表中注册COM项作为招聘开源开发人员,您可能会发现,要求在开发人员的计算机上安装MinGW会阻碍一些专门的pywin32用户使用该项目。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11314253

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档