命令指南
先掌握常用命令,再查完整参考。
ckc 是 CK 的命令行程序。你在终端或 PowerShell 里输入一条命令,它就会检查 .ck 文件、运行程序,或生成其他程序可以使用的文件。初学时只需要记住 check 和 run。
最常用的命令#
| 命令 | 它会做什么 |
|---|---|
ckc --version |
查看编译器版本 |
ckc check hello.ck |
检查代码并指出错误;成功时显示 OK: hello.ck |
ckc run hello.ck |
运行含有 main 的程序 |
ckc build hello.ck --kind executable --out hello |
生成可以单独运行的程序 |
ckc emit-c kernel.ck --out kernel.c |
生成 C 源码和配套头文件 |
ckc emit-wasm kernel.ck --out kernel.wasm |
生成 WebAssembly 文件 |
如果你正在跟着本网站的入门教程,并把编译器放在当前文件夹里,macOS/Linux 命令前加 ./,Windows PowerShell 命令前加 .\ 并使用 ckc.exe,例如:
# macOS / Linux
./ckc check hello.ck
./ckc run hello.ck
# Windows PowerShell
.\ckc.exe check hello.ck
.\ckc.exe run hello.ck
生成文件时#
ckc run 适合快速试一试;若想留下一份之后可单独启动的程序,用 build:
ckc build hello.ck --kind executable --out hello
C 和 WebAssembly 输出主要用于把 CK 计算交给别的程序或运行环境。第一次学习时可以跳过,见输出方式了解该选哪一种。
进阶:检查编译器生成的内容#
下列命令用于研究 CK 内部如何表示或优化程序,一般不需要用来编写第一个 CK 程序:
| 命令 | 用途 |
|---|---|
ckc emit-mir file.ck |
查看编译器整理后的程序结构 |
ckc emit-kir file.ck --print-facts |
查看供优化器使用的内部计算表示 |
ckc emit-wat file.ck |
查看可读的 WebAssembly 文本 |
ckc licenses |
查看发行版所包含的许可声明 |
run 和 build 默认使用 O3 优化;整数溢出和切片边界默认不检查。Native 与 C 可按需打开检查。PGO、CPU 多版本编译及各选项限制属于进阶主题,参见 PGO 与 CPU 变体和完整的命令行规范。目前不支持离线 Auto-Tuning。
链接到仓库的完整参考文档以 main 分支为准,可能包含尚未进入最新下载版本的功能。