邱 璇洛 (ゝ∀・)

邱 璇洛 (ゝ∀・)

你好哇(*゚∀゚*)~这里是邱璇洛的博客,常常用来记录一些技术文章和小日常~(σ゚∀゚)σ
twitter
tg_channel

在IOS上随时编写c语言项目

Why?🤔️#

确实,这个需求听起来很是有意思,谁会闲着没事干在手机 /iPad 上写代码。但是,这很酷不是吗?想象一下,随时随地拿起手机就可以写项目,而且是真正的可以 push 的。

实际上,怎样在手机上编写代码有着悠久的历史。极客们把设备压缩到极限,先别说生产力,光是这件事情就很酷了🤩!

所以,如果你现在还有着一颗好奇和折腾的,火热的心,接着往下看,我保证你马上就可以在朋友面前 show 一手。

第一步,陈列清单。🧾#

我们现明确目标:

  1. 能真正的写代码。
  2. 能真正的在本地运行。
  3. 可以提交到我的远程仓库。

我找遍了 App Store,留下了一些还不错的:

1. Code App 30¥#

IMG_1580

Code App 是一个完全开源的项目。她拥有友善地页面和版本管理,拥有一个简易的命令行,支持十多种语言的编写和运行,不过大多数是建设在网络上的。目前支持 Node.js, Python, C, C++, PHP 的本地运行。

对于前端开发者来说,她是绝对友好的,因为几乎所有的前端框架都可以运行,其他语言的支持也很不错,可是,她对无键盘用户非常不友好,操作十分别扭,如果有钱买妙控板的话,她就是完美的开发工具。

但是!#

虽然 Code 很强大,但是这不符合我们随时随地折腾的心愿,而且由于终端是个假的,限制也有一大堆。

2. C Code Develop#

IMG_1579

C Code Develop 是一位国人大佬开发的,能随时随地编写小玩具,还可以上传到作者搞的小商店里。作者写了很多好玩的东西,比如把 SwiftUI 搬到里面,编写小程序;编写小组件;搞到自己的 ip;发送 get 请求.....

而且,最重要的是,页面真的超级好看,可以自定义背景。代码上不仅有高光甚至拥有自动补全!

但是!#

她不支持 git...... 不仅如此,根本没有命令行....

ish#

IMG_1581

ish 是一个完全开源免费的,运行在 ios 上的 Linux 仿真软件。你可以在上面使用一个近乎完整的Alpine Linux,你可能会疑惑:“苹果不是从来不允许虚拟机上架 App Store 嘛?”。小了,格局小了!这仿真器怎么能叫虚拟机呢!

总之,有了这玩意,你几乎可以在你的 iPhone 上 iPad 上愉快的尝试 Linux,然后灰溜溜跑回图形页面

关于这个软件的介绍可就太多了,国内外都有,在上面几乎可以运行所以编程语言,比如我试过的 c,py3,py2,lua,OCaml。可惜的是,她现在还不支持 node 和 rust,当然,我还试了 dotnet,也是无法运行(顺带提一嘴,想要在 ios/iPadOS 上运行 dotnet 最好的软件我认为只有Continuous)。她的内核版本还是 AlpineLinux 3.14,而 rust 直到 3.18 才支持 AlpineLinux....

最重要的是,她还支持 git(毕竟就是半个 Linux 系统)。

但是!#

这玩意发展没多久,作者还在勤奋更新,坑实在是太多了,许多东西也不完善,不过已经是 ios/iPadOS 上最好的了。

综合评价下来,似乎只有 ish 能够大约满足我们的要求。而且,手机上的终端实在是太酷了!

现在,开始折腾!

Begin!🤩#

首先,下载好ish 然后打开她!

你会发现真的和终端一样,而你找不到设置。
其实,设置就在右下角,下面这张图给出了基本的操作。圈起来的就是设置。

IMG_1583

好啦!个性化之后就是真正的编程啦!

开始前的调教!🎼#

我们需要先调教一下包管理器。

包管理器在这里的指令是apk

因为一些众所周知的原因,我们需要更换一下源才能正常的下载包。在终端里输入:

sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories && apk update

等待命令跑完,就可以愉快的 install 啦!

你也可以在/etc/apk/repositories里自定义源。记得编辑完之后运行apk update哦!

下载!配置!⬇️📦⚙️📄#

我们需要安装一些必须的东西。

软件原生携带了 gcc 和 make,但是等你真的写了你就会发现她其实还用不了,这时候我们需要下载一个 “补丁”。

在终端输入:

apk add build-base

如果你的软件没有携带 gcc 和 make 之类的必需品,你也可以用相同的方式下载。

apk add gcc make

或者你喜欢用 clang 也可以,随喜好。

现在,当你编写一段代码再去编译时,就不会再找不到头文件啦!

现在,我们还需要 git,按照之前的方法直接 add 即可

apk add git

如果你想,你也可以下载例如 vim,nvim,nano,emase 之类的编辑器。按照之前一样 add 即可!

注意⚠️#

这里有一个小问题,在 iPhone 上,nvim 十分不正常(或者说稳定),vim 在配制后也会发癫。但 iPad 上完全没有这个问题,我猜测可能是屏幕大小的问题。

关于 Git⬆️📊#

Git 可是开发人员或不可缺的工具,在 ish 里有些问题让 git 无法正常的链接 Github,不过我们仍然可以通过个人令牌进行 push 操作。

首先下载 git

apk add git

然后进行最基础的配置,比如邮箱和用户名,这些就不过多介绍了,不会请自行谷歌。

我们需要在 GitHub 上创建一个新项目,并且在设置里创建一个 30 天或者更长时间的个人令牌。

在修改完项目后,进行 push 项目时,GitHub 会提示您进行登录,这时候填密码是无法正常登录的,需要把你的个人令牌填进去,就可以正常的进行 push。

最后#

生命不息,折腾不止!

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。