鸿蒙PC Matebook Pro上安装仓颉编译器每日构建版
本文介绍了在鸿蒙PC上安装和使用仓颉编译器的详细步骤。首先需要安装CodeArts IDE并下载仓颉编译器每日构建版本,然后从IDE中提取签名工具并进行配置。接着解压编译器包,修改脚本文件,使用签名工具对编译器文件进行批量签名。最后提供了两种使用仓颉编译器的方法:临时使用和永久配置,并演示了如何编译、签名和执行简单的仓颉程序。整个过程包括环境准备、工具配置、编译器安装和使用示例,为开发者提供了完整
·

准备工作
- 在鸿蒙PC上使用应用商店安装CodeArts IDE
- 下载仓颉编译器每日构建版本: cangjie-sdk-ohos-aarch64-1.1.0-alpha.2025xxxxxxxxxxxxx.tar.gz
从CodeArts IDE提取签名工具
打开IDE, 随便创建一个项目打开,在终端执行以下命令
# 复制签名工具
cp /data/app/toolchains.org/toolchains_1.0/lib//binary-sign-tool .
# 对签名工具签名
binary-sign-tool sign -inFile "./binary-sign-tool" -outFile "./binary-sign-tool-signed" -selfSign 1
# 添加可执行权限
chmod +x binary-sign-tool-signed
# 测试,如果没弹授权弹窗和帮忙输出,需要重新签名和添加可执行权限
./binary-sign-tool-signed
# 复制到用户安装目录
mkdir -p ~/.local/bin
cp ./binary-sign-tool-signed ~/.local/bin/binary-sign-tool
最后在~/.zshrc添加export PATH=$HOME/.local/bin:$PATH
安装仓颉编译器
- 把下载的仓颉编译器复制到个人目录(文件管器和下载目录同级)
- 打开终端解压
tar -xzf cangjie-sdk-ohos-aarch64-1.1.0-alpha.2025xxxxxxxxxxxxx.tar.gz换自己下载的版本 - 打开
cangjie/envsetup.sh把首行的#!/bin/bash换成#!/bin/sh - 把以下脚本保存为
sign-cangjie.sh并复制到cangjie目录下和envsetup.sh同级#!/bin/sh # 递归查询当前目录及其子目录下的所有文件 find . -type f | while read -r file; do # 使用 file 命令检查文件类型 if file "$file" | grep "shared object"; then echo "Found executable or shared object: $file" # 确保文件具有可执行权限 chmod +x "$file" # 签名文件 echo "Signing file: $file" binary-sign-tool sign -inFile "$file" -outFile "$file" -selfSign 1 fi done - 在终端切换到
cangjie目录下,执行chmod +x sign-cangjie.sh并执行./sign-cangjie.sh - 切换到
third_party/llvm/bin目录执行rm ld.lld && cp lld ld.lld-
这一步是为了解决 cjc 编译过程中找不到`ld.lld`的问题, 原因是仓颉编译器看不到软链接的 `ld.lld`
-
使用仓颉编译器
现在就可以按仓颉教程的两种方法使用仓颉了(注意换成自己仓颉的存放目录)
-
第一种,临时使用
- 打开终端
source ~/.local/opt/cangjie/envsetup.sh然后就可以在当前终端窗口执行cjc -v
- 打开终端
-
第二种,永远使用
- 把
source $HOME/.local/opt/envsetup.sh添加到~/.zshrc里,之后打开的新终端都可以使用仓颉命令了
- 把
编译并执行项目
- 写一个
hello_world.cj
main(){
println("你好,仓颉\n你好鸿蒙")
}
- 编译
cjc hello_world.cj - 签名
binary-sign-tool sign -inFile "./main" -outFile "./main-signed" -selfSign 1 - 授权
chmod +x ./main-signed - 执行
./main-signed, 如无意外就能看到输出了
欢迎加入开源鸿蒙PC社区:https://harmonypc.csdn.net/
更多推荐



所有评论(0)