在iOS上执行Unix /任意命令

时间:2019-04-26 13:38:58

标签: ios swift process

这不是用于生产应用程序-我只是在尝试它的乐趣(在设备上,而不是在模拟器上)。

是否有任何机制可以在iOS上执行任意二进制文件?说ls

我尝试过posix_spawn(),但是它总是返回状态1

system()甚至没有编译,但失败并显示:'system' is unavailable: not available on iOS

fork()同样不允许

我意识到这是一个长期的尝试,但是我有几个(本地/个人)项目被编写为预编译的ARM二进制文件,我很想在iPad上提供它们。 (此外,这只是一个有趣的实验。)

旁注:我已经好几年没有越狱iOS设备了,我希望避免使用它-如果在普通的iOS设备上无法实现以上要求,我将叹口气继续前进。

1 个答案:

答案 0 :(得分:2)

GitHub上有一个名为 Linux shell for iOS 的项目,可使用usermode x86仿真和syscall来使Linux shell在iOS上运行翻译。

  

您将需要这些东西来构建项目:

     
      
  • Python 3
  •   
  • 忍者
  •   
  • 纱线(仅在为iOS构建时)
  •   
  • 介子(点安装介子)
  •   
  • Clang和LLD(在Mac上,brew安装llvm,在Linux上,sudo apt安装clang lld或sudo pacman -S clang lld或其他)
  •   
  • sqlite3(这很常见,它可能已经安装在linux上,并且肯定已经安装在mac上。如果没有,请执行sudo apt install libsqlite3-dev之类的操作)
  •   

我在this帖子中找到了这个GitHub链接。

P.S。我很高兴它正在运行。

enter image description here