AI 摘要

在 Windows 上启用 WSL2 并安装 Ubuntu 20.04,换源后依次安装 build-essential、libgcc-7-dev 等依赖,解压 Cangjie 0.26.2 工具链,配置 envsetup.sh 与 .bashrc,验证 cjc/cpm 可用;再于 VSCode 安装 Cangjie 插件并指定 LSPServer 路径,新建 helloworld.cj,执行 cjc 编译运行,输出“hello world,hello Cangjie”。

安装 Ubuntu20.04 子系统

Windows 下打开控制面板-选择程序-启用或关闭 Windows 功能,勾选适用于 Linux 的 Windows 子系统和虚拟机平台选项,确定后重启系统,已勾选这两项的忽略此步。

运行 PowerShell(管理员),设置 WSL 版本为 WSL2。

wsl --set-default-version 2

下载最新的 WSL 安装包,更新 WSL2,下载后双击安装即可。

下载地址:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

运行 PowerShell(管理员),查看 Ubuntu 版本信息和名称。

wsl --list --online

运行 PowerShell(管理员),安装 Ubuntu-20.04。

wsl --install -d Ubuntu-20.04

由于命令行下载 Ubuntu-20.04 速度缓慢,建议从 Microsoft Store 下载 Ubuntu-20.04。

Ubuntu 20.04 下载好后,运行 Ubuntu 20.4 子系统,按步骤输入用户名、密码以完成安装。

配置 Cangjie 运行环境

子系统安装完成后,依次执行以下命令切换源。此过程耗时较长,请耐心等待。

sudo sed -i s@/archive.ubuntu.com/@/mirrors.aliyun.com/@g /etc/apt/sources.list 
sudo apt-get update
sudo apt full-upgrade -y
sudo apt autoremove

安装 build-essential。

sudo apt-get install build-essential

安装 libgcc-7-dev。

sudo apt-get install libgcc-7-dev

安装 libtinfo.so.5。

sudo apt install libncurses5

安装 binutils。

sudo apt-get install binutils

建立软连接。

sudo ln -s /usr/lib/x86_64-linux-gnu/libstdc++.so.6 /usr/lib/libstdc++.so

Windows 打开资源管理器,输入 \wsl$,进入 Ubuntu20.04LTS 系统。

获取 Cangjie 工具链压缩包,并将文件复制到虚拟机内。

解压 Cangjie 工具链压缩包,并修改文件夹的权限。没有设置权限,在某些情况下会提示无权限。务必注意操作时终端所在目录。

# 切换目录
cd ./Cangjie

# 解压缩包
sudo tar -xzvf Cangjie_0.26.2-ubuntu_18.04-x86_64.tar.gz

# 设置权限
cd ~
chmod 777 -R ./Cangjie

解压后得到以下文件:

Cangjie 工具链的路径为:/home/duozai/Cangjie/cangjie。

修改 envsetup.sh 文件,将 cangjie 运行环境的路径赋值给 current_dir。

在终端中运行:

source envsetup.sh

修改 home 主目录下的 .bashrc 文件(此文件为隐藏文件),将以下内容追加到文件末尾。

export current_dir=自行替换cangjie运行环境的路径
export PATH=${current_dir}/bin:$PATH
export LIBRARY_PATH=${current_dir}/lib/linux_x86_64_llvm:${LIBRARY_PATH}
export LD_LIBRARY_PATH=${current_dir}/lib/linux_x86_64_llvm:${LD_LIBRARY_PATH}
export CANGJIE_HOME=${current_dir}
source ${CANGJIE_HOME}/envsetup.sh

依次执行以下命令,检测运行环境是否配置成功。

cjc -v
cpm -v

配置 Windows 环境下的 VSCode

Windows 下载 VSCode:https://code.visualstudio.com/

获取 Cangjie VSCode 插件,解压得到同名文件夹。

打开 VSCode,安装 vsix 插件。

配置 VSCode 插件,设置 LSPServer 服务端路径。

LSPServer 服务端路径为:VSCode 插件目录地址\LSPServer.exe,如:F:\Program Files\Huawei\Cangjie\Cangjie_VSCode_0.26.2-windows-x86_64\LSPServer.exe。

Hello Cangjie

打开 VSCode,创建目录及文件:cangjie_helloworld/src/helloworld.cj。

编写 helloworld.cj 代码:

func main() {
    println("hello world,hello Cangjie")
}

打开终端,执行命令,并查看输出结果。

wsl
cjc src/helloworld.cj
./main