鸿蒙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

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

相关推荐
GlueNa2SiO35 小时前
03-Flask模板引擎Jinja2详解
笔记·python·flask
Capricorn19887 小时前
解决全网抄 Karpathy 导致的 LLM Wiki 污染?基于知芽 Notebook Skill 的 raw/ 笔记法排障指南
大数据·论文阅读·人工智能·笔记·论文笔记
壹玖玖肆7 小时前
openGauss使用笔记
笔记
宵时待雨7 小时前
linux笔记归纳17:传输层协议UDP
linux·笔记·udp
噜~噜~噜~9 小时前
操作系统笔记-2.3.2.1 进程互斥的软件实现方法
笔记·操作系统
云贝教育-郑老师9 小时前
【麒麟服务器系统交付:一个DBA的六年信创实战笔记】
服务器·笔记·dba
chunmiao303210 小时前
苹果首款2nm芯片M6与M5 Ultra发布,Mac本地跑大模型进入新阶段
macos
玖玥拾10 小时前
LeetCode 392 判断子序列
笔记·算法·leetcode
Magic-ZYJ10 小时前
HarmonyOS Release 构建安全:ArkGuard 混淆、签名配置与秘密管理
安全·华为·harmonyos·移动应用开发·心晴手记
摇滚侠11 小时前
《SpringBoot 3:入门与应用实战》第 7 章 AOP 思想与实现 阅读笔记 15
java·spring boot·笔记