iOS上的theos设置问题

需求: 在theos上编译插件的时候总是会提示这个,我是不是有哪里没有设置好
操作步骤:
PNG
环境: 完整clone的theos+sdk,theos环境变量已添加,LLVM+Clang\ld64\cc tools\make\ldid已安装

找个简单的tweak先在电脑上编译没问题后再用手机编译试试

这个插件电脑上编译是没问题的
实际上这个插件非常简单,就几个钩子

其实我在iOS12上使用theos是没有问题的但是不知道为什么升了13装了一样的依赖就挂了(保资料升级,theos在用户分区)

很久之前在iOS11上装过theos没啥问题,看你的错误也不像环境的问题。明天我在iOS13上装看看

已经弄明白什么问题了


实际上是perl的权限问题
我们都知道 perl是theos一个很重要的依赖项

相信很多人都喜欢把theos安装到/var上,但是这样做会导致一个问题,即perl被sandbox化,但是可以看到,
bingner源的perl并没有com.apple.private.security.no-container的entitlements,导致theos相关模块并不能被正常调用,因此就会报错
解决办法:给perl包里的所有二进制程序加上com.apple.private.security.no-container的entitlements,或者把theos安装到/var外面(我是把theos安装到了/opt了 ,毕竟perl里面的二进制程序太多
其它在/var里面调用perl/python/etc标头的脚本同理,要么移动到/var外面执行,要么把这些东西加上com.apple.private.security.no-container的entitlements。

2 个赞

这个怎么说呢 我之前已经跟bingner反馈过zsh bash没有com.apple .private.security.no-container的问题。但是我和他显然都忘了,需要加上com.apple .private.security.no-container的不仅仅只有这两个。(被unc0ver的dpkg惯坏了)

是写的太菜了吗呜呜呜呜

Sam Bingner说他会更新的(perl/python/etc)
不过估计不会很快就是了。毕竟虽然没有难度但挺麻烦的。

1 个赞

我营销号看多了 现在我就把微信卸载了

震惊! Theos iOS13无法编译背后的真相竟然是这样! 网友看了都高呼iOS不可战胜!

先安装perl和所有其它依赖

我人都傻了