能否在iOS上以静态库的形式运行Python构建的程序?

8

我有一些用Python 2.7开发的AI代码,使用了非标准库。

我想将其编译以适用于我的iPhone应用程序。

我不想重新编写所有内容,有没有一种方法可以将我的Python代码和所有依赖项编译成静态文件,以便我可以在iOS应用程序中调用它作为函数?


非标准库是开源的吗? - Ben S
@marcelosalloum 我正在尝试使用 https://github.com/yann2192/pyelliptic 库,但是在 kivy 中没有适当的文档。您能告诉我如何操作吗? - SandeepAggarwal
@SandeepAggarwal,我从未成功过。当时它还很不成熟,我无法让它工作,也从未再尝试过。祝你好运! - marcelosalloum
@marcelosalloum 谢谢您的回复。 - SandeepAggarwal
2个回答

6

如果我使用 Python 2.7 for iOS 这个解决方案,用户需要安装它,是吗?因此我不会依赖这个选项。你有用过 Kivy 吗?它真的可以胜任工作吗? - marcelosalloum
我已经在Android上使用过它,它运行得像本地应用程序...我没有在IOS上使用过它,但我认为它是一样的...它有点难设置,但一旦你设置好环境,它就可以正常工作。 - Joran Beasley
我无法编译分发版本,并收到以下错误:https://dev59.com/zHfZa4cB1Zd3GeqPMwwn。如果我解决了它,我也会在这里发布。 - marcelosalloum
kivy-ios现在使用clang编译器而不是llvm-gcc,所有功能似乎都正常工作,感谢Mathieu Virbel - marcelosalloum
Mattieu是个很棒的人。 - Joran Beasley

1

iPhone应用程序必须使用Objective-C、C、C++或Objective-C++编写,不能解释Python代码。

然而,如果您可以访问库源代码,则可以将Python源代码翻译并编译为C代码。

我建议从PyPy Toolchain开始研究。


1
我非常确定他不仅仅是想在shell中运行一些Python代码,而是想将其包含在另一个应用程序中。 - Ben S
我们在工作中使用Kivy用Python构建Android应用程序,效果很好...我怀疑你对iOS脚本的事情是正确的...但是Kivy基本上可以做到他想要的(有一些限制)。 - Joran Beasley

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接