惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

I
InfoQ
博客园_首页
美团技术团队
M
MIT News - Artificial intelligence
人人都是产品经理
人人都是产品经理
Blog — PlanetScale
Blog — PlanetScale
H
Help Net Security
J
Java Code Geeks
T
Tailwind CSS Blog
Jina AI
Jina AI
量子位
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
G
Google Developers Blog
爱范儿
爱范儿
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
宝玉的分享
宝玉的分享
小众软件
小众软件
MongoDB | Blog
MongoDB | Blog
博客园 - 三生石上(FineUI控件)
L
LangChain Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
V
Visual Studio Blog
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知

东方星痕

忆时塔 OOM 追凶记 仓颉服务 - 忆时塔 OOM 追凶记 戴森球与光伏文明:一个被忽略的最优解 戴森球与光伏文明:一个被忽略的最优解 | 东方星痕 鸿蒙PC上使用box64运行x86_64鸿蒙SDK编译HAP 鸿蒙PC上使用box64运行x86_64鸿蒙SDK编译HAP | 东方星痕 仓颉语言 Neovim 开发环境配置指南 仓颉语言 Neovim 开发环境配置指南 | 东方星痕 鸿蒙PC融合开发引擎中编译安装Neovim与AstroNvim配置指南 鸿蒙PC融合开发引擎中编译安装Neovim与AstroNvim配置指南 | 东方星痕 鸿蒙PC融合开发引擎架构解析:虚拟机与容器双模式 鸿蒙PC融合开发引擎架构解析:虚拟机与容器双模式 | 东方星痕 MCP-Term:一个未出生即夭折的想法 MCP-Term:一个未出生即夭折的想法 | 东方星痕 鸿蒙PC Matebook Pro上全局安装GIT 鸿蒙PC Matebook Pro上全局安装GIT | 东方星痕 Neovim移植鸿蒙PC:三方库适配实战与挑战解析 Neovim移植鸿蒙PC:三方库适配实战与挑战解析 | 东方星痕 鸿蒙PC Matebook Pro上安装仓颉编译器每日构建版 | 东方星痕 鸿蒙pc上Vite 7 + Rollup原生模块问题的解决方案 鸿蒙pc上Vite 7 + Rollup原生模块问题的解决方案 | 东方星痕 hypyland实现alt + tab切换到任意工作区的窗口 hypyland实现alt + tab切换到任意工作区的窗口 | 东方星痕 使用泛型设计gorm扩展字段 使用泛型设计gorm扩展字段 | 东方星痕 使用qemu8.0安装龙芯loongarch64版本archlinux 使用qemu8.0安装龙芯loongarch64版本archlinux | 东方星痕 在archlinux aur上提交龙芯loongarch的软件包 在archlinux aur上提交龙芯loongarch的软件包 | 东方星痕 k3s云上master+内网agent的部署方式
鸿蒙PC Matebook Pro上安装仓颉编译器每日构建版
2025-12-27 · via 东方星痕

鸿蒙PC Matebook Pro上安装仓颉编译器每日构建版

使用示例

使用示例

准备工作

从CodeArts IDE提取签名工具

打开IDE, 随便创建一个项目打开,在终端执行以下命令

1
2
3
4
5
6
7
8
9
10
11
12
# 复制签名工具
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同级

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    #!/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 ~/.cangjie/envsetup.sh 然后就可以在当前终端窗口执行cjc -v
  • 第二种,永远使用

    • source $HOME/.cangjie/envsetup.sh 添加到 ~/.zshrc 里,之后打开的新终端都可以使用仓颉命令了

编译并执行项目

  • 写一个hello_world.cj

    1
    2
    3
    main(){
    println("你好,仓颉\n你好鸿蒙")
    }
  • 编译 cjc hello_world.cj

  • 签名 binary-sign-tool sign -inFile "./main" -outFile "./main-signed" -selfSign 1
  • 授权 chmod +x ./main-signed
  • 执行 ./main-signed , 如无意外就能看到输出了