在iPhone上使用PyObjC的Python Hello World?

1 投票
1 回答
3842 浏览
提问于 2025-04-16 17:37

我从Cydia安装了iphone-python这个软件包,但是当我在Springboard上运行HelloPython应用时,它立刻就关闭了。

这可能不是重点,但我在终端找到了.py文件,尝试用python运行它,结果出现了一个python错误:

$ python /private/var/stash/Applications.pwn/HelloPython.app/HelloPython.py
Traceback (most recent call last):
  File "/private/var/stash/Applications.pwn/HelloPython.app/HelloPython.py", line 9, in <module>
    import objc
  File "/usr/lib/python2.5/objc/__init__.py", line 17, in <module>
    _update()
  File "/usr/lib/python2.5/objc/__init__.py", line 14, in _update
    import _objc
ImportError: dlopen(/usr/lib/python2.5/lib-dynload/_objc.dylib, 2): Symbol not found: _OBJC_CLASS_$_Object
  Referenced from: /usr/lib/python2.5/lib-dynload/_objc.dylib
  Expected in: /usr/lib/libobjc.A.dylib

我现在用的是4.3.3版本。

我该怎么做才能让这个应用正常工作,这样我就可以有一个PyObjC的示例了?

1 个回答

0

由于新的iOS系统对可执行文件的运行方式进行了改变,动态库出现了问题。因为升级后的Objective-C,mach-o文件无法再运行。一个解决办法是从源代码编译pyobjc,然后正常运行。不过,这里有个问题,iPhone上的pyobjc是为UIKit构建的,所以你需要找到Saurik(Jay Freeman)的源代码并进行编译。我可能会自己尝试这样做,如果成功的话,我会再分享一个deb文件。

撰写回答