配置 Cangjie 编程语言的开发环境
此教程基于日更版仓库说明。
仓颉编程语言 SDK
https://atomgit.com/Cangjie/nightly_build/releases
一、下载 cangjie sdk
下载不带 sanitizer 的版本,除非需要开发 cangjie 编程语言本身。
| 下载地址 | 包大小 |
cangjie-sdk-linux-x64-1.1.0-alpha.20260307010001-sanitizer.tar.gz | 471.0MB |
cangjie-sdk-linux-x64-1.1.0-alpha.20260307010001.tar.gz | 385.6MB |
这两个包都是仓颉编程语言(Cangjie)的 Linux x64 SDK alpha 版本(同一个构建时间:20260307010001),区别主要在于是否内置了 sanitizer(内存/行为检查工具)。
cangjie-sdk-linux-x64-1.1.0-alpha.20260307010001.tar.gz
普通版本(release build),体积较小:385.6MB
适合日常开发、编译、运行程序,性能最好。
cangjie-sdk-linux-x64-1.1.0-alpha.20260307010001-sanitizer.tar.gz
带 sanitizer 插桩的调试版本(通常是 AddressSanitizer + 可能还有 UndefinedBehaviorSanitizer 等),体积较大:471.0MB
主要用于找内存错误(use-after-free、buffer overflow)、未定义行为等 bug,运行时会明显变慢(通常 2–10 倍),内存占用也更高。
简单总结对比:
| 项目 | 普通版 (.tar.gz) | sanitizer 版 (-sanitizer.tar.gz) |
| 文件大小 | 385.6 MB | 471.0 MB(多了 85 MB) |
| 主要用途 | 日常开发、性能测试 | 找内存越界、野指针、UB 等严重 bug |
| 运行速度 | 正常 | 明显变慢 |
| 内存占用 | 正常 | 显著增加 |
| 推荐场景 | 写代码、跑 benchmark | CI 里的 asan 测试、本地 debug 崩溃问题 |
建议使用方式:
- 平时开发 → 用小的那个(无-sanitizer)
- 遇到诡异崩溃、段错误、疑似内存问题 → 换 sanitizer 版重新编译运行,程序会在出错的地方直接报详细的 asan 信息(栈踪迹 + 具体哪一行越界/释放后使用等)
二、安装
tar -zxvf cangjie-sdk*.tar.gz -C ~/.local/
三、配置环境变量
$HOME/.bashrc
# Cangjie
export CANGJIE_HOME=$HOME/.local/cangjie
if [[ -f "$CANGJIE_HOME/envsetup.sh" ]]; then
source "$CANGJIE_HOME/envsetup.sh"
fi
仓颉编程语言扩展库
一、下载扩展库
cangjie-stdx-linux-x64-1.1.0-alpha.20260307010001.1.zip
二、安装
安装至 ~/.local/share/cangjie
mkdir -p ~/.local/share/cangjie
unzip cangjie-stdx*.zip -d ~/.local/share/cangjie
三、配置环境变量
$HOME/.bashrc
## Cangjie stdx
export CANGJIE_STDX_PATH=$HOME/.local/share/cangjie/linux_x86_64_cjnative/dynamic/stdx
if [[ -d "$CANGJIE_STDX_PATH" ]]; then
export LD_LIBRARY_PATH=$CANGJIE_STDX_PATH:$LD_LIBRARY_PATH
fi
export CANGJIE_STDX_STATIC_PATH=$HOME/.local/share/cangjie/linux_x86_64_cjnative/static/stdx