quickstart-lite-env-setup.md 15.5 KB
Newer Older
D
duangavin123 已提交
1
# 搭建轻量与小型系统环境
D
duangavin123 已提交
2 3


D
duangavin123 已提交
4
## 系统要求
D
duangavin123 已提交
5

D
duangavin123 已提交
6
- Windows系统要求:Windows10 64位系统。
D
duangavin123 已提交
7

L
liyan 已提交
8
- Ubuntu系统要求:Ubuntu18.04~21.10版本,内存推荐16 GB及以上。
D
duangavin123 已提交
9

D
duangavin123 已提交
10 11 12
- Windows系统和Ubuntu系统的用户名不能包含中文字符。

- Windows和Ubuntu上安装的DevEco Device Tool为3.0 Release版本。
D
duangavin123 已提交
13 14


D
duangavin123 已提交
15
## 安装必要的库和工具
D
duangavin123 已提交
16

D
duangavin123 已提交
17 18 19 20
编译OpenHarmony需要一些库和工具,可以通过以下步骤进行安装。

相应操作在Ubuntu环境中进行。

D
duangavin123 已提交
21 22 23 24 25 26 27 28 29 30 31
1. 使用如下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
   ```

   > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
   > 以上安装命令适用于Ubuntu18.04,其他版本请根据安装包名称采用对应的安装命令。其中:
   > 
   > - Python要求安装Python 3.8及以上版本,此处以Python 3.8为例。
   > 
D
duangavin123 已提交
32
   > - Java要求java8及以上版本,此处以java8为例。
D
duangavin123 已提交
33 34

2. 将python 3.8设置为默认python版本。
L
liyan 已提交
35

D
duangavin123 已提交
36 37 38 39 40 41 42
   查看python 3.8的位置:

     
   ```
   which python3.8
   ```

L
liyan 已提交
43
   将python和python3切换为python3.8:
D
duangavin123 已提交
44 45 46 47 48 49 50 51 52
     
   ```
   sudo update-alternatives --install /usr/bin/python python {python3.8 路径} 1    #{python3.8 路径}为上一步查看的python3.8的位置
   sudo update-alternatives --install /usr/bin/python3 python3 {python3.8 路径} 1   #{python3.8 路径}为上一步查看的python3.8的位置
   ```


## 安装DevEco Device Tool

D
duangavin123 已提交
53
通过Windows系统远程访问Ubuntu环境进行烧录等操作,需要先在Windows和Ubuntu下分别安装DevEco Device Tool。
D
duangavin123 已提交
54 55

> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
D
duangavin123 已提交
56 57 58 59 60
> DevEco Device Tool是OpenHarmony的一站式开发工具,支持源码开发、编译、烧录,调测等,本文主要用其远端连接Ubuntu环境进行烧录和运行。


### 安装Window版本DevEco Device Tool

L
liyan 已提交
61
1. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Windows版。
D
duangavin123 已提交
62 63 64

2. 解压DevEco Device Tool压缩包,双击安装包程序,点击Next进行安装。

D
duangavin123 已提交
65
3. 设置DevEco Device Tool的安装路径,请注意安装路径不能包含中文字符,同时建议安装到非系统盘符,点击**Next**
L
liyan 已提交
66

D
duangavin123 已提交
67 68 69 70 71 72 73 74
   > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
   > 如果您已安装DevEco Device Tool 3.0 Beta2及以前的版本,则在安装新版本时,会先卸载旧版本,卸载过程中出现如下错误提示时,请点击“Ignore”继续安装,该错误不影响新版本的安装。
   > 
   > ![zh-cn_image_0000001239275843](figures/zh-cn_image_0000001239275843.png)

   ![zh-cn_image_0000001270076961](figures/zh-cn_image_0000001270076961.png)

4. 根据安装向导提示,勾选要自动安装的软件。
L
liyan 已提交
75

D
duangavin123 已提交
76
   1. 在弹出VSCode installation confirm页面,勾选“Install VScode 1.62.2automatically”,点击**Next**
L
liyan 已提交
77

D
duangavin123 已提交
78 79 80 81
       > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
       > 如果检测到Visual Studio Code已安装,且版本为1.62及以上,则会跳过该步骤。

       ![zh-cn_image_0000001237801283](figures/zh-cn_image_0000001237801283.png)
L
liyan 已提交
82

D
duangavin123 已提交
83
   2. 在弹出的Python select page选择“Download from Huawei mirror”,点击**Next**
L
liyan 已提交
84

D
duangavin123 已提交
85 86 87
       > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
       > 如果系统已安装可兼容的Python版本(Python 3.8~3.9版本),可选择“Use one of compatible on your PC”。

D
duangavin123 已提交
88

D
duangavin123 已提交
89
       ![zh-cn_image_0000001193983334](figures/zh-cn_image_0000001193983334.png)
D
duangavin123 已提交
90

D
duangavin123 已提交
91 92 93
5. 在以下界面点击**Next**

   ![zh-cn_image_0000001259180828](figures/zh-cn_image_0000001259180828.png)
94

D
duangavin123 已提交
95
6. 请详细阅读以下界面的用户协议和隐私声明,这里须勾选"I accept the licenses",然后点击Next,安装向导才会继续进行软件下载和安装。
D
duangavin123 已提交
96

D
duangavin123 已提交
97 98 99
   ![zh-cn_image_0000001307019009](figures/zh-cn_image_0000001307019009.png)

7. 继续等待DevEco Device Tool安装向导自动安装DevEco Device Tool插件,直至安装完成,点击**Finish**,关闭DevEco Device Tool安装向导。
100

D
duangavin123 已提交
101 102
   ![zh-cn_image_0000001239650137](figures/zh-cn_image_0000001239650137.png)

D
duangavin123 已提交
103
8. 打开Visual Studio Code,进入DevEco Device Tool工具界面。至此,DevEco Device Tool Windows开发环境安装完成。
104

D
duangavin123 已提交
105 106 107 108
   ![zh-cn_image_0000001225760456](figures/zh-cn_image_0000001225760456.png)


### 安装Ubuntu版本DevEco Device Tool
D
duangavin123 已提交
109

L
liyan 已提交
110 111 112
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> 如果没有Ubuntu系统,可在Windows系统中通过虚拟机方式搭建Ubuntu系统,具体请参考[Ubuntu系统安装指导](https://developer.huawei.com/consumer/cn/training/course/video/C101639987816176315)。Ubuntu系统安装完成后,请根据指导完成[Ubuntu基础环境配置](https://developer.huawei.com/consumer/cn/training/course/video/C101639988048536240),然后再根据本章节进行DevEco Device Tool工具的安装。

D
duangavin123 已提交
113
1. 将Ubuntu Shell环境修改为bash。
D
duangavin123 已提交
114

D
duangavin123 已提交
115 116 117 118 119 120 121
   1. 执行如下命令,确认输出结果为bash。如果输出结果不是bash,请根据步骤2,将Ubuntu shell修改为bash。
         
       ```
       ls -l /bin/sh
       ```

       ![zh-cn_image_0000001226764302](figures/zh-cn_image_0000001226764302.png)
D
duangavin123 已提交
122

D
duangavin123 已提交
123 124 125 126 127 128 129 130
   2. 打开终端工具,执行如下命令,输入密码,然后选择**No**,将Ubuntu shell由dash修改为bash。
         
       ```
       sudo dpkg-reconfigure dash
       ```

       ![zh-cn_image_0000001243641075](figures/zh-cn_image_0000001243641075.png)

D
duangavin123 已提交
131
2. 下载[DevEco Device Tool 3.0 Release](https://device.harmonyos.com/cn/ide#download) Linux版本。
D
duangavin123 已提交
132 133

3. 解压DevEco Device Tool软件包并对解压后的文件夹进行赋权。
L
liyan 已提交
134

135
   1. 进入DevEco Device Tool软件包目录,执行如下命令解压软件包,其中devicetool-linux-tool-3.0.0.401.zip为软件包名称,请根据实际进行修改。
D
duangavin123 已提交
136 137
         
       ```
138
       unzip devicetool-linux-tool-3.0.0.401.zip
D
duangavin123 已提交
139
       ```
140
   2. 进入解压后的文件夹,执行如下命令,赋予安装文件可执行权限,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。
D
duangavin123 已提交
141 142
         
       ```
143
       chmod u+x devicetool-linux-tool-3.0.0.401.sh
D
duangavin123 已提交
144 145
       ```

146
4. 执行如下命令,安装DevEco Device Tool,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。
L
liyan 已提交
147
   
D
duangavin123 已提交
148
   ```
149
   sudo ./devicetool-linux-tool-3.0.0.401.sh
D
duangavin123 已提交
150 151
   ```

L
liyan 已提交
152 153 154 155 156
5. 在用户协议和隐私声明签署界面,请详细阅读用户协议和隐私声明,需签署同意用户协议和隐私声明才能进行下一步的安装。

   

   ![zh-cn_image_0000001322167645.png](figures/zh-cn_image_0000001322167645.png)
D
duangavin123 已提交
157

D
duangavin123 已提交
158 159
   安装完成后,当界面输出“Deveco Device Tool successfully installed.”时,表示DevEco Device Tool安装成功。

D
duangavin123 已提交
160 161 162 163 164 165 166 167 168
   ![zh-cn_image_0000001198722374](figures/zh-cn_image_0000001198722374.png)


## 配置Windows远程访问Ubuntu环境


### 安装SSH服务并获取远程访问的IP地址

1. 在Ubuntu系统中,打开终端工具,执行如下命令安装SSH服务。
L
liyan 已提交
169

D
duangavin123 已提交
170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195
   > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
   > 如果执行该命令失败,提示openssh-server和openssh-client依赖版本不同,请根据CLI界面提示信息,安装openssh-client相应版本后(例如:sudo apt-get install openssh-client=1:8.2p1-4),再重新执行该命令安装openssh-server。

     
   ```
   sudo apt-get install openssh-server
   ```

2. 执行如下命令,启动SSH服务。
     
   ```
   sudo systemctl start ssh
   ```

3. 执行如下命令,获取当前用户的IP地址,用于Windows系统远程访问Ubuntu环境。
     
   ```
   ifconfig
   ```

   ![zh-cn_image_0000001215737140](figures/zh-cn_image_0000001215737140.png)


### 安装Remote SSH

1. 打开Windows系统下的Visual Studio Code,点击![zh-cn_image_0000001239080359](figures/zh-cn_image_0000001239080359.png),在插件市场的搜索输入框中输入“remote-ssh”。
196

D
duangavin123 已提交
197 198 199
   ![zh-cn_image_0000001193920448](figures/zh-cn_image_0000001193920448.png)

2. 点击Remote-SSH的**Install**按钮,安装Remote-SSH。安装成功后,在**INSTALLED**下可以看到已安装Remote-SSH。
200

D
duangavin123 已提交
201 202 203 204 205 206
   ![zh-cn_image_0000001238880335](figures/zh-cn_image_0000001238880335.png)


### 远程连接Ubuntu环境

1. 打开Windows系统的Visual Studio Code,点击![zh-cn_image_0000001238760373](figures/zh-cn_image_0000001238760373.png),在REMOTE EXOPLORER页面点击+按钮。
D
duangavin123 已提交
207
  
D
duangavin123 已提交
208
   ![zh-cn_image_0000001215878922](figures/zh-cn_image_0000001215878922.png)
D
duangavin123 已提交
209

D
duangavin123 已提交
210
2. 在弹出的SSH连接命令输入框中输入“ssh _username_\@_ip_address_”,其中ip_address为要连接的远程计算机的IP地址,username为登录远程计算机的帐号。
211

D
duangavin123 已提交
212
   ![zh-cn_image_0000001215879750](figures/zh-cn_image_0000001215879750.png)
D
duangavin123 已提交
213

D
duangavin123 已提交
214
3. 在弹出的输入框中,选择SSH configuration文件,选择默认的第一选项即可。
215

D
duangavin123 已提交
216 217 218
   ![zh-cn_image_0000001260519729](figures/zh-cn_image_0000001260519729.png)

4. 在SSH TARGETS中,找到远程计算机,点击![zh-cn_image_0000001194080414](figures/zh-cn_image_0000001194080414.png),打开远程计算机。
219

D
duangavin123 已提交
220 221 222
   ![zh-cn_image_0000001215720398](figures/zh-cn_image_0000001215720398.png)

5. 在弹出的输入框中,选择**Linux**,然后在选择**Continue**,然后输入登录远程计算机的密码,连接远程计算机 。
223

D
duangavin123 已提交
224 225 226
   > ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
   > 在Windows系统远程访问Ubuntu过程中,需要频繁的输入密码进行连接,为解决该问题,您可以使用SSH公钥来进行设置,设置方法请参考[注册远程访问Ubuntu环境的公钥](https://device.harmonyos.com/cn/docs/documentation/guide/ide-registering-public-key-0000001247162706)。

D
duangavin123 已提交
227 228 229 230 231
   ![zh-cn_image_0000001215897530](figures/zh-cn_image_0000001215897530.png)

   连接成功后,等待在远程计算机.vscode-server文件夹下自动安装插件,安装完成后,根据界面提示在Windows系统下重新加载Visual Studio Code,便可以在Windows的DevEco Device Tool界面进行源码开发、编译、烧录等操作。


D
duangavin123 已提交
232 233
## 获取源码

L
liyan 已提交
234
在Ubuntu环境下通过以下步骤获取OpenHarmony源码。
D
duangavin123 已提交
235

D
duangavin123 已提交
236 237 238 239 240 241 242 243

### 准备工作

1. 注册码云gitee帐号。

2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)

3. 安装git客户端和git-lfs。(上述工具已在安装必要的库和工具小节安装。如已安装,请忽略)
244

D
duangavin123 已提交
245
   更新软件源:
D
duangavin123 已提交
246 247 248 249 250
     
   ```
   sudo apt-get update
   ```

D
duangavin123 已提交
251
   通过以下命令安装:
D
duangavin123 已提交
252 253 254 255 256 257 258 259 260 261 262 263 264 265
     
   ```
   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工具。
L
liyan 已提交
266 267 268

   下述命令中的安装路径以"~/bin"为例,请用户自行创建所需目录。
  
D
duangavin123 已提交
269
   ```
L
liyan 已提交
270 271 272
   mkdir ~/bin
   curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o ~/bin/repo 
   chmod a+x ~/bin/repo
D
duangavin123 已提交
273 274 275
   pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
   ```

L
liyan 已提交
276 277 278 279 280 281 282 283
6. 将repo添加到环境变量。

   ```
   vim ~/.bashrc               # 编辑环境变量
   export PATH=~/bin:$PATH     # 在环境变量的最后添加一行repo路径信息
   source ~/.bashrc            # 应用环境变量
   ```

D
duangavin123 已提交
284

L
liyan 已提交
285
### 获取方式
D
duangavin123 已提交
286 287 288 289 290

> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> Master主干为开发分支,开发者可通过Master主干获取最新特性。发布分支代码相对比较稳定,开发者可基于发布分支代码进行商用功能开发。

- **OpenHarmony主干代码获取**
D
duangavin123 已提交
291

D
duangavin123 已提交
292
  方式一(推荐):通过repo + ssh下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。
D
duangavin123 已提交
293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309
    
  ```
  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'
  ```

- **OpenHarmony发布分支代码获取**
D
duangavin123 已提交
310

D
duangavin123 已提交
311 312 313 314 315 316 317 318 319 320 321 322 323 324
  OpenHarmony各个版本发布分支的源码获取方式请参考[Release-Notes](../../release-notes/Readme.md)


### 执行prebuilts

  在源码根目录下执行prebuilts脚本,安装编译器及二进制工具。
  
```
bash build/prebuilts_download.sh
```


## 安装编译工具

325
想要详细了解OpenHarmony编译构建模块功能的开发者可参考[编译构建指南](../subsystems/subsys-build-mini-lite.md)
D
duangavin123 已提交
326

D
duangavin123 已提交
327 328
相关操作在Ubuntu环境下进行。

D
duangavin123 已提交
329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389

### 安装hb

> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> 如需安装代理,请参考[配置代理](../quick-start/quickstart-lite-reference.md#配置代理)。

1. 运行如下命令安装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
   ```

> ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:**
> - 可采用以下命令卸载hb:
>     
>   ```
>   pip3 uninstall ohos-build
>   ```
> 
> - 若安装hb的过程中遇到问题,请参见下文[常见问题](../quick-start/quickstart-lite-faq-hb.md)进行解决。


### 安装LLVM(仅OpenHarmony_v1.x分支/标签需要)

> ![icon-notice.gif](public_sys-resources/icon-notice.gif) **须知:**
390
> 如果下载的源码为OpenHarmony_v1.x分支/标签,请按下面的步骤安装12.0.1版本的llvm。
D
duangavin123 已提交
391 392 393 394 395
> 
> 如果下载的源码为Master及非OpenHarmony_v1.x分支/标签,可直接跳过本小节,hb会自动下载最新的llvm。

1. 打开Linux编译服务器终端。

396
2. [下载LLVM工具](https://repo.huaweicloud.com/openharmony/compiler/clang/12.0.1-530132/linux/clang-530132-linux-x86_64.tar.bz2)
D
duangavin123 已提交
397 398 399 400

3. 解压LLVM安装包至~/llvm路径下。
     
   ```
401 402
   tar -jxvf clang.tar.bz2 -C ~/
   mv ~/clang-530132/ ~/llvm
D
duangavin123 已提交
403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422
   ```

4. 设置环境变量。
     
   ```
   vim ~/.bashrc
   ```

   将以下命令拷贝到.bashrc文件的最后一行,保存并退出。

     
   ```
   export PATH=~/llvm/bin:$PATH
   ```

5. 生效环境变量。
     
   ```
   source ~/.bashrc
   ```