OpenHarmony设备开发基于命令行开发 搭建开发环境 准备开发环境
准备开发环境
在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3861、Hi3516系列开发板。因此,建议使用Ubuntu的编译环境对源码进行编译。同时,开发板的烧录需要在Windows环境中进行。
在基于命令行方式开发的过程中,除下述Windows环境要求、Ubuntu环境要求外,不对开发设备做另外的要求,请用户自行准备Windows环境、Ubuntu环境。本章节主要介绍通过Samba服务器实现Windows环境远程连接Ubuntu环境的方法。
说明: OpenHarmony还为开发者提供了Docker环境
,整合的docker包在很大程度上简化了编译前的环境配置,习惯使用命令行的开发者也可以选择Docker环境进行编译 。
进行工具安装之前,需要做如下准备。
Windows环境要求
源码烧录需要Windows10 64位的系统环境。
Ubuntu环境要求
- Ubuntu18.04及以上版本,内存推荐16 GB及以上。
- Ubuntu系统的用户名不能包含中文字符。
远程访问准备
当在Windows下进行烧录时,开发者需要访问Ubuntu环境下的源码和镜像文件。您可以使用习惯的文件传输或共享工具实现文件的共享或传输。
此处介绍通过Samba服务器进行连接的操作方法。
配置Samba服务器
在Ubuntu环境下进行以下操作:
1.安装Samba软件包。
sudo apt-get install samba samba-common
2.修改Samba配置文件,配置共享信息。 打开配置文件:
sudo gedit /etc/samba/smb.conf
在配置文件末尾添加以下配置信息(根据实际需要配置相关内容):
[Share] #在Windows中映射的根文件夹名称(此处以“Share”为例)
comment = Shared Folder #共享信息说明
path = /home/share #共享目录
valid users = username #可以访问该共享目录的用户(Ubuntu的用户名)
directory mask = 0775 #默认创建的目录权限
create mask = 0775 #默认创建的文件权限
public = yes #是否公开
writable = yes #是否可写
available = yes #是否可获取
browseable = yes #是否可浏览
3.添加Samba服务器用户和访问密码。
sudo smbpasswd -a username #用户名为Ubuntu用户名。输入命令后,根据提示设置密码。
4.重启Samba服务。
sudo service smbd restart
设置Windows映射
在Windows环境下进行以下操作:
- 右键计算机选择映射网络驱动器,输入共享文件夹信息。在文件夹输入框填入Ubuntu设备的IP地址和Ubuntu共享文件夹的路径。
2. 输入Samba服务器的访问用户名和密码(在配置Samba服务器时已完成配置)。
3.用户名和密码输入完成后即可在Windows下看到Linux的共享目录,并可对其进行访问。
安装库和工具集
使用命令行进行设备开发时,可以通过以下步骤安装编译OpenHarmony需要的库和工具。
相应操作在Ubuntu环境中进行。
- 使用如下apt-get命令安装后续操作所需的库和工具:
sudo apt-get update && sudo apt-get install binutils binutils-dev git git-lfs gnupg flex bison gperf build-essential zip curl zlib1g-dev gcc-multilib g++-multilib gcc-arm-linux-gnueabi libc6-dev-i386 libc6-dev-amd64 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z1-dev ccache libgl1-mesa-dev libxml2-utils xsltproc unzip m4 bc gnutls-bin python3.8 python3-pip ruby genext2fs device-tree-compiler make libffi-dev e2fsprogs pkg-config perl openssl libssl-dev libelf-dev libdwarf-dev u-boot-tools mtd-utils cpio doxygen liblz4-tool openjdk-8-jre gcc g++ texinfo dosfstools mtools default-jre default-jdk libncurses5 apt-utils wget scons python3.8-distutils tar rsync git-core libxml2-dev lib32z-dev grsync xxd libglib2.0-dev libpixman-1-dev kmod jfsutils reiserfsprogs xfsprogs squashfs-tools pcmciautils quota ppp libtinfo-dev libtinfo5 libncurses5-dev libncursesw5 libstdc++6 gcc-arm-none-eabi vim ssh locales libxinerama-dev libxcursor-dev libxrandr-dev libxi-dev
说明:
以上安装命令适用于Ubuntu18.04,其他版本请根据安装包名称采用对应的安装命令。其中:
- Python要求安装Python 3.8及以上版本,此处以Python 3.8为例。
- Java要求java8及以上版本,此处以java8为例。
2.将Python 3.8设置为默认Python版本。
查看Python 3.8的位置:
which python3.8
将Python和Python3切换为Python 3.8:
sudo update-alternatives --install /usr/bin/python python {Python 3.8 路径} 1 #{Python 3.8 路径}为上一步查看的Python 3.8的位置
sudo update-alternatives --install /usr/bin/python3 python3 {Python 3.8 路径} 1 #{Pytho
获取源码
在Ubuntu环境下通过以下步骤获取OpenHarmony源码。
准备工作
- 注册码云gitee帐号。
- 注册码云SSH公钥,请参考码云帮助中心。
- 安装git客户端和git-lfs。(上述工具已在安装必要的库和工具小节安装。如已安装,请忽略)
更新软件源:
sudo apt-get update
通过以下命令安装:
sudo apt-get install git git-lfs
4.配置用户信息。
git config --global user.name "yourname"
git config --global user.email "your-email-address"
git config --global credential.helper store
5.执行如下命令安装码云repo工具。
下述命令中的安装路径以"~/bin"为例,请用户自行创建所需目录。
mkdir ~/bin
curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o ~/bin/repo
chmod a+x ~/bin/repo
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
6.将repo添加到环境变量。
vim ~/.bashrc # 编辑环境变量
export PATH=~/bin:$PATH # 在环境变量的最后添加一行repo路径信息
source ~/.bashrc # 应用环境变量
获取方式
说明: 发布分支代码相对比较稳定,开发者可基于发布分支代码进行商用功能开发。Master主干为开发分支,开发者可通过Master主干获取最新特性。
- OpenHarmony发布分支代码获取
OpenHarmony各个版本发布分支的源码获取方式请参考Release-Notes。 - OpenHarmony主干代码获取
方式一(推荐):通过repo + ssh下载(需注册公钥,请参考码云帮助中心)。
repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
方式二:通过repo + https下载。
repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
执行prebuilts
在源码根目录下执行prebuilts脚本,安装编译器及二进制工具。
bash build/prebuilts_download.sh
安装编译工具
想要详细了解OpenHarmony编译构建模块功能的开发者可参考编译构建指南。
相关操作在Ubuntu环境下进行。
安装hb
说明: 如需安装代理,请参考配置代理
。
- 运行如下命令安装hb并更新至最新版本
pip3 install --user build/lite
2.设置环境变量
vim ~/.bashrc
将以下命令拷贝到.bashrc文件的最后一行,保存并退出。
export PATH=~/.local/bin:$PATH
执行如下命令更新环境变量。
source ~/.bashrc
3.在源码目录执行"hb -h",界面打印以下信息即表示安装成功:
usage: hb
OHOS build system
positional arguments:
{build,set,env,clean}
build Build source code
set OHOS build settings
env Show OHOS build env
clean Clean output
optional arguments:
-h, --help show this help message and exit
须知:可采用以下命令卸载hb:
pip3 uninstall ohos-build
- 若安装hb的过程中遇到问题,请参见下文常见问题进行解决。
安装LLVM(仅OpenHarmony_v1.x分支/标签需要)
须知: 如果下载的源码为OpenHarmony_v1.x分支/标签,请按下面的步骤安装9.0.0版本的llvm。
如果下载的源码为Master及非OpenHarmony_v1.x分支/标签,可直接跳过本小节,hb会自动下载最新的llvm。
- 打开Linux编译服务器终端。
- 下载LLVM工具。
- 解压LLVM安装包至~/llvm路径下。
tar -zxvf llvm.tar -C ~/
4.设置环境变量。
vim ~/.bashrc
将以下命令拷贝到.bashrc文件的最后一行,保存并退出。
export PATH=~/llvm/bin:$PATH
5.生效环境变量。
source ~/.bashrc
文章转载自:https://docs.openharmony.cn/pages/v3.2Beta/zh-cn/device-dev/quick-start/quickstart-pkg-prepare.md/