鸿蒙PC开发笔记一:HarmonyOS PC 命令行适配指南(Mac 版)

第一步:安装python3,因为鄙人用的10.15老系统,系统默认的python2.7依然在发光,之前brew安装的3.8版本有点低,没有科学上网brew upgrade多次不成功,所以索性从python官网下载了3.9.13安装包,

bash 复制代码
https://www.python.org/ftp/python/3.9.13/python-3.9.13-macosx10.9.pkg

双击默认安装,

下面配置有点麻烦,因为无法通过shell alias覆盖系统的python2,所以爱了一下,好容易发现可以通过在用户目录下建立bin目录,软连接安装的python3,然后加入PATH路径(这个方案确实柳暗花明以前没想到......)

bash 复制代码
# echo 'export PATH="$HOME/bin:$PATH"' >> ~/.zshrc
# source ~/.zshrc

步骤二:下载sdk

bash 复制代码
wget https://repo.huaweicloud.com/openharmony/os/6.0-Release/ohos-sdk-mac-public.tar.gz
或者
curl -# -o ohos-sdk-mac-public.tar.gz -C - https://repo.huaweicloud.com/openharmony/os/6.0-Release/ohos-sdk-mac-public.tar.gz

解压到新建的用户目录ohos-sdk,里面有个5个zip包,移动两个到sdk目录:

bash 复制代码
# tar -zxvf ohos-sdk-mac-public.tar.gz -C ~/ohos-sdk
bash 复制代码
# mv native-darwin-x64-6.0.0.47-Beta1.zip ~/ohos-sdk
# mv toolchains-darwin-x64-6.0.0.47-Beta1.zip ~/ohos-sdk

# unzip native-darwin-x64-6.0.0.47-Beta1.zip
# unzip toolchains-darwin-x64-6.0.0.47-Beta1.zip

创建目录,下载构建脚本(需要注册gitcode账户,并且关联ssh公钥,负责下载失败)

bash 复制代码
# mkdir -p ~/HarmonyOSPC/data/service/hnp

# cd ~/HarmonyOSPC
# git clone git@gitcode.com:OpenHarmonyPCDeveloper/build.git

第三步:配置HNP公共资源路径和一些脚本参数

bash 复制代码
# mkdir build/code; cd $_
# git clone git@gitcode.com:OpenHarmonyPCDeveloper/cmdtree.git -b master

在cmdtree目录增加build_ohos.sh,内容如下:

export TREE_INSTALL_HNP_PATH=${HNP_PUBLIC_PATH}/tree.org/tree_2.2.1

sys_prefix=${PREFIX}

export PREFIX=${TREE_INSTALL_HNP_PATH}

echo "${PREFIX}"

make clean

make VERBOSE=1

make install

cp hnp.json ${TREE_INSTALL_HNP_PATH}/

pushd ${TREE_INSTALL_HNP_PATH}/../

{HNP_TOOL} pack -i {TREE_INSTALL_HNP_PATH} -o ${ARCHIVE_PATH}/

tar -zvcf ${ARCHIVE_PATH}/ohos_tree_2.2.1.tar.gz tree_2.2.1/

popd

export PREFIX=${sys_prefix}

因为涉及到「PREFIX」变量make会失败,回去修改一下build.sh

bash 复制代码
export HNP_PERFIX=~/

这样,data目录不会直接设置到跟目录造成macos权限无法跨越的麻烦,跟前面python一样,下面就很丝滑了%

步骤四:运行build.sh编译

bash 复制代码
# ./build.sh --sdk /Users/xxx/ohos-sdk

看到这些信息,说明很丝滑的构建完成,万事开头难,后面应该很顺利了~

相关推荐
鄭郑7 分钟前
STM32学习笔记--I2C封装与OLED(2026.2.1)
笔记·stm32·学习
mocoding1 小时前
flutter通信小能手pigeon三方库已完成鸿蒙化适配
flutter·华为·harmonyos
酒鼎1 小时前
学习笔记(4)HTML5新特性(第3章)- WebSocket
笔记·学习·html5
一起养小猫1 小时前
Flutter for OpenHarmony 实战:2048游戏完整开发指南
flutter·游戏·harmonyos
-Springer-2 小时前
STM32 学习 —— 个人学习笔记2-2(新建工程)
笔记·stm32·学习
tb_first2 小时前
万字超详细苍穹外卖学习笔记4
java·spring boot·笔记·学习·spring·mybatis
日更嵌入式的打工仔2 小时前
C内存布局
笔记
卡布叻_星星2 小时前
达梦数据库笔记之使用教程以及不推荐迁移选择小写
笔记
山岚的运维笔记2 小时前
SQL Server笔记 -- 第15章:INSERT INTO
java·数据库·笔记·sql·microsoft·sqlserver
孞㐑¥2 小时前
算法—队列+宽搜(bfs)+堆
开发语言·c++·经验分享·笔记·算法