老柯修机铺

通讯行老师傅的手机软件笔记——每款 App 装过、用过,才敢写下来

Cxxdroid 五年磨一剑——把 C/C++ 开发环境塞进手机的演进之路

项目内容
软件Cxxdroid
版本5.6_arm64
平台Android APK
体积47.91M
分类办公
开发商Lider Soft KZ
包名ru.iiec.cxxdroid
官网Cxxdroid 官网
下载一Cxxdroid 下载,Cxxdroid 下载
下载二Cxxdroid 下载,Cxxdroid 下载
文档Cxxdroid 文档
介绍从早期能跑 Hello World 的简陋编译器,到如今自带 CMake、包管理器、gdb 调试的完整移动 IDE,Cxxdroid 的版本迭代记录了一条独特的"把桌面工具链搬到手机"的产品路线。

Cxxdroid 是什么

Cxxdroid 是一款运行在 Android 上的 C/C++ 集成开发环境。它不是那种把代码传到服务器上编译的在线编译器,也不是仅仅提供语法高亮的轻量编辑器——它在手机上跑的是一条完整的工具链:clang 编译器、CMake 构建系统、gdb 调试器、以及一个自建的包管理器。最新版本 5.6_arm64 的安装包有四十七兆多,装完之后能直接在手机上从零编译运行 SDL2 游戏、链接 Boost 库、用 CMake 组织多文件项目。

我第一次接触它是在一款旧安卓平板上,那时候还觉得"手机上写 C++"是个噱头。但当我真的在屏幕上敲了一段链表反转、点一下运行按钮就看到结果输出在终端里的时候,我意识到这玩意儿的定位可能比"玩具"要认真得多。它背后的团队是哈萨克斯坦的 Lider Soft KZ,一家在移动端开发工具这条小众赛道上默默深耕的小公司。从 5.6 版本往回看,他们走过的路其实挺有意思。

现在这版长什么样

先说说 5.6 这个版本(发布于 2026 年 8 月初)已经堆了哪些东西。

构建系统用的是 CMake——这在移动端编译器里很少见。大部分同类工具要么是单文件直接编译,要么用自己的一套脚本。Cxxdroid 从某个版本开始转向 CMake,好处是桌面端成熟的 CMakeLists.txt 几乎可以原样搬过来,SDL2 的 find_package 直接能用,target_link_libraries 里把缺的库一个个补上就行。缺点是 CMake 本身编译起来很慢,第一次构建一个中型项目可能要等好几分钟——不过这已经是所有移动编译方案的通病了。

包管理器是它另一个有辨识度的功能。你可以在终端里装 libcurl、Boost、SDL2 全家桶、SQLite3、OpenCV——装完之后 CMake 的 find_package 就能直接找到,不用自己手动拷 .a 文件和改 CMakeLists。这个包管理器的架构很克制:它只做一件事,就是把预编译好的静态库放到约定的目录里,让编译器的默认搜索路径能找到它们。没有版本管理、没有依赖冲突提示、没有回滚——够用,但不完整。

编辑器部分,语法高亮覆盖了 C/C++ 的完整语法:关键字、类型、字符串、注释、数字、预处理器指令、函数调用、宏展开都有独立颜色。主题内置了浅色、深色、高对比度三种类型,字体大小可以从设置里调。默认 12px 的字体在手机上确实有点费眼,调到 16px 之后读起来舒服多了。还有一个扩展键盘栏,把 C++ 常用但手机输入法难打的符号——尖括号、星号、分号、花括号——排成一排常驻在键盘上方。

Cxxdroid 编辑器主题与代码高亮

调试器用的是 gdb 的 ARM64 原生版本。支持设置断点、单步执行、查看变量值、回溯调用栈。界面比较朴素,就是传统的 gdb 命令行加上一个基本的断点面板。没有条件断点的可视化配置,没有内存查看器,没有性能 profiler——但对于"在手机上验证一段算法逻辑"这种场景来说,这些功能其实够用了。

还有 Premium 付费版本的独占功能,Pastebin 一键分享是其中之一。在编辑器里选一段代码、点一下按钮,就能把内容发到 Pastebin.com 拿到一个短链接。免费版用户想用的话,得自己用 libcurl 拼 Pastebin 的 API 请求——Cxxdroid 自带的 libcurl 正好能派上用场,算是一种有趣的"付费功能的平民替代方案"。

从哪起步的

坦白说,公开文档里找不到 Cxxdroid 早期版本的完整 changelog。我翻了它的文档站四个随机样本,都是在讲具体怎么用、怎么排查问题,没有专门的"版本历史"栏目。这本身是件挺有意思的事——小团队做的工具,往往只有最终形态被认真记录,早期蹒跚学步的阶段就留在了旧 APK 里。

但从功能完备度可以反推几个大致阶段。

最早的起点应该很朴素:一个能在安卓上跑 clang 的单文件编译器。用户打开编辑器、写一段代码、点运行按钮、看终端输出。没有 CMake,没有包管理器,多文件项目得手动写编译命令。这个阶段的用户画像非常清晰:C 语言初学者、编程课程的学生、面试前想在手机上刷两道算法题的人。

然后是"构建系统"阶段。某个版本之后它引入了 CMake 支持——这一步的意义远大于"多了一个构建选项"。它意味着 Cxxdroid 不再满足于"跑单文件",开始试图承接桌面端迁移过来的完整项目。那一下门槛就抬高了:SDL2 游戏、用 Boost 的工具程序、多文件的数据结构实现,这些以前在手机上想都不敢想的东西突然变得可行了。

接下来是"编辑器体验"阶段。语法高亮从"能区分关键字和普通文本"进化到完整覆盖、主题系统上线、扩展键盘栏加进来。这些功能看起来不像 CMake 那样有"质变"的感觉,但它们决定了你能不能真的长时间用它写代码,而不是三分钟热度。我自己的体会是,如果编辑器不能把 std::vector<int> 的尖括号和类型名高亮出来,手机上写模板代码简直是在自虐。

再之后就是"包管理器"了。这个功能补完之后,Cxxdroid 的工具链基本成了:你装应用、开包管理器装 SDL2、写 CMakeLists.txt、编译运行——这一套流程跟桌面上用 CLion 几乎没差。到这一步,它已经不再是"玩具替代品",而是一个真正能用的移动开发工具。

最后就是 Premium 变现和 arm64 原生编译了。5.6 版本明确标注了 _arm64 后缀,说明现在主打原生 64 位。Premium 版本在这个时间点出现,说明团队在工具链基本成熟之后开始考虑商业可持续性——从免费工具到付费增值功能,这也是小团队产品的典型路径。

他们一直在死磕什么

从这些功能的优先级能看出 Cxxdroid 团队的一些取舍。

他们一直在死磕的是"移动端完整 C/C++ 工具链"这个核心命题。CMake、包管理器、原生编译——这些都是在补工具链的短板,而不是去做花哨的功能。对比一下同类工具里那些靠在线服务"蹭编译"的方案,Cxxdroid 的路径是"把桌面端那套原封不动搬过来",代价是安装包大、首次编译慢,但好处是离线能用、不依赖服务器、完全免费(基础版)。

编辑器体验也是一个持续投入的方向。主题系统、字体大小、扩展键盘栏——这些小功能加起来让手机屏幕上写代码这件事变得不那么反人性。我特别在意那个扩展键盘栏,因为手机输入法敲尖括号和分号真的很烦,那个小功能看似微不足道,实际提升的是每天打开应用写代码的频率。

Cxxdroid 手机端代码编辑界面

那什么他们一直没做?Git 集成就是一个。文档里提到"可以手动管理文件",但没有内置的版本控制界面——提交、diff、branch 这些操作要么用终端里的 git 命令行,要么彻底放弃。协作就更不用提了,没有远程调试、没有多人编辑、没有性能分析面板。这些都是桌面 IDE 的标配功能,但 Cxxdroid 至今没有补。

我觉得这不是"忘了做",而是"故意不做"。对于核心用户画像——C/C++ 初学者和业余开发者——Git 协作、远程调试这些需求并不高频。他们需要的是一个随时随地能跑代码的环境,而不是一个完整的团队开发平台。把有限的精力花在"让工具链更完整、让编辑器更好用"上,比去碰 Git 集成这种大块头功能更划算。

接下来会往哪走

以上都是从 5.6 版本的功能列表往回推的。那反过来,照这个迭代节奏,下一步大概率会是什么?

首先,我觉得包管理器会是下一个补全的重点。现在的包管理器只有"装"这一个动作,没有版本号选择、没有依赖冲突处理、没有卸载清理。对于"装了 SDL2 但没装 SDL2_image 导致 undefined reference"这种情况,它不会自动提示你漏了什么。如果包管理器能进化到"装 A 自动装 A 依赖的 B、C、D",那 Cxxdroid 的可用性会再上一个台阶。

其次,调试器的体验可能会改进。现在 gdb 的界面还是命令行为主,断点管理靠一个朴素的面板。如果能加上条件断点、内存查看、变量监控这些可视化调试功能,在手机上排查复杂 bug 的效率会高很多。不过考虑到手机屏幕的限制,这块能做到什么程度还是个问题——也许会有一个"调试面板"的专用布局,横屏显示?

Premium 功能的扩展也是一个可能的方向。现在 Premium 只有 Pastebin 分享这一个独占功能(虽然免费版可以自己用 libcurl 绕过)。未来也许会有云端项目同步、更多高级编辑器特性(比如代码折叠、自动补全的深度提升)、或者独家的库资源包。毕竟小团队要活下去,总得有可持续的收入来源。

我个人最期待的其实是代码补全。目前的代码补全是基础版的——靠 clangd 引擎但触发不太灵敏,大项目里偶尔会卡住。如果补全的响应速度能跟桌面端的 CLion 差不多,那在手机上写中等规模的项目就真的成为可能了。

当然这些都是从迭代规律推的,不是官方口径。Cxxdroid 这种小众工具的路线,很多时候取决于团队的精力分配和用户反馈的方向。唯一可以确定的是,只要他们继续沿着"把桌面端 C/C++ 工具链搬到手机上"这条线往下走,Cxxdroid 就会一直在这个赛道上保持它的独特位置。毕竟能在手机上完整编译运行 SDL2 游戏的方案,现在还是不多见的。

本文为个人基于网络公开资料整理编写,非官方内容,仅供学习交流参考;软件版权归原作者所有,请支持正版;使用过程中遇到问题请查阅官方渠道,本文不承担任何责任。

同类文章