在Windows TO Linux / OSX中用Python交叉编译

时间:2012-07-11 16:35:04

标签: python windows python-2.7 cross-compiling

我有一个程序,我在Windows上用Python 2.7编写,并且我一直在使用py2exe取得成功,使其成为一个exe(及相关文件)。但是,我想要使用它的合理数量的人在Linux / OSX上,虽然有些人已经能够使Windows版本与Wine一起使用,但其他人却没有那么成功。我已经深入研究了py2installer,py2app,freeze等等,但是如果我理解正确(我是Python新手并且非常新编译)你需要在你想要编译的系统上运行它们它们,即你只能在Linux上编译Linux,在OSX上编译OSX。我不想只分发原始文件,因为我希望源代码被混淆,因为它在.exe中,显然不是每个人都有Python。

所以,我的问题是:在Windows机器上有没有办法在Python,中编译OSX或Linux?如果没有,您认为最好的替代解决方案是什么?

2 个答案:

答案 0 :(得分:2)

获取Virtualbox,在其中安装Ubuntu,并在Linux中“本地”构建它。这些东西工作得很好,交叉编译只是在惹麻烦。你最终还是需要Linux来回答你从这些客户那里得到的支持问题! :(

答案 1 :(得分:2)

  1. 代码混淆真的不是'pythonic'。即使打包到.exe文件中,它基本上只是python解释器,你的源代码(嗯,.pyc文件)压缩成一个文件。它不像交叉编译那么多,因为它使用的是一个python包,可以在linux上完成你想要的东西(例如,以特定的方式打包代码)。 Freeze会为您执行此操作。

  2. 大多数linux dists内置了python。

  3. 让你的linux盒子运行!这很有趣,很有用,你可以随时说'On My Machine It Works!'。你可以在那里编译代码/在Wine上测试你的exe。

  4. 如果由于某种原因你仍然无法让它运行,请发一个问题!