From f7892261177c054c89a7426750f56269232826b5 Mon Sep 17 00:00:00 2001 From: wusongqing Date: Thu, 28 Apr 2022 20:35:04 +0800 Subject: [PATCH] updated docs Signed-off-by: wusongqing --- en/application-dev/ability/fa-formability.md | 5 + .../ui/ui-ts-building-data-model.md | 5 +- en/contribute/contribution-process.md | 8 +- en/contribute/figures/clone.png | Bin 14723 -> 14835 bytes en/device-dev/faqs/faqs-building.md | 208 ++++++++++-------- en/device-dev/faqs/faqs-burning.md | 113 +++++----- en/device-dev/faqs/faqs-environment-setup.md | 208 ++++++++++-------- .../faqs/faqs-system-applications.md | 22 +- .../quick-start/quickstart-standard-faq-hb.md | 64 +++--- 9 files changed, 363 insertions(+), 270 deletions(-) diff --git a/en/application-dev/ability/fa-formability.md b/en/application-dev/ability/fa-formability.md index 49f2cf96d7..7a8720f75a 100644 --- a/en/application-dev/ability/fa-formability.md +++ b/en/application-dev/ability/fa-formability.md @@ -7,10 +7,15 @@ A widget displays brief information about an application on the UI of another ap Basic concepts: - Widget provider + The widget provider is an atomic service that provides the content to be displayed. It controls the display content, component layout, and component click events of a widget. + - Widget host + The widget host is an application that displays the widget content and controls the position where the widget is displayed in the host application. + - Widget Manager + The Widget Manager is a resident agent that manages widgets added to the system and provides functions such as periodic widget update. > ![icon-note.gif](public_sys-resources/icon-note.gif) **NOTE** diff --git a/en/application-dev/ui/ui-ts-building-data-model.md b/en/application-dev/ui/ui-ts-building-data-model.md index 66b713bf5e..8ca60a2c02 100644 --- a/en/application-dev/ui/ui-ts-building-data-model.md +++ b/en/application-dev/ui/ui-ts-building-data-model.md @@ -8,8 +8,9 @@ On the created page, we use various items to describe food, such as food names, 1. Create a folder named model and create a file named FoodData.ets therein. - ![en-us_image_0000001223127760](figures/en-us_image_0000001223127760.png) - + +![en-us_image_0000001223127760](figures/en-us_image_0000001223127760.png) + 2. Define a food data storage model, FoodData, and an enum variable, Category. The FoodData class contains the food ID, name, category, image, calories, protein, fat, carbohydrates, and vitamin C attributes. The eTS programming language is an extension of the TS language and also supports the TS syntax. diff --git a/en/contribute/contribution-process.md b/en/contribute/contribution-process.md index 2544af3593..97e7742034 100755 --- a/en/contribute/contribution-process.md +++ b/en/contribute/contribution-process.md @@ -34,12 +34,14 @@ Perform the following steps to download the code in the repository to your compu ``` 2. Clone the remote repository. - - You can copy the address of the remote repository on the repository page. + - You can copy the address of the remote repository on the repository page. - **Figure 1** + **Figure 1** - - Run the following command on the local host: + ![](figures/clone.png "clone") + - Run the following command on the local host: + ``` git clone $remote_link ``` diff --git a/en/contribute/figures/clone.png b/en/contribute/figures/clone.png index dc499827a432f72adda7c12a70576f5e6e2a212b..14297059405ba2035f5f165e38e62624c2178e29 100644 GIT binary patch literal 14835 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.9.0 - ``` - +``` + - **Possible Causes** - **six** is not installed. - + +**six** is not installed. + - **Solution** - Solution 1: Run the **pip3 install six** command to install **six** online. - - Method 2: Offline installation - - Download the installation package from [PyPI](https://pypi.org/project/six/#files). - - ![en-us_image_0000001251276115](figures/en-us_image_0000001251276115.png) - - Save the source code to the Linux server and run the **pip3 install six-1.14.0-py2.py3-none-any.whl** command to install **six**. - + +Solution 1: Run the **pip3 install six** command to install **six** online. + +Method 2: Offline installation + +Download the installation package from [PyPI](https://pypi.org/project/six/#files). + +![en-us_image_0000001251276115](figures/en-us_image_0000001251276115.png) + +Save the source code to the Linux server and run the **pip3 install six-1.14.0-py2.py3-none-any.whl** command to install **six**. + After the preceding installation is complete, rebuild an environment. ### "cannot find -lgcc" Displayed During the Build Process - **Symptom** - The following error occurs during the build process: - - + +The following error occurs during the build process: + + ``` riscv32-unknown-elf-ld: cannot find -lgcc - ``` - +``` + - **Possible Causes** - The PATH is incorrectly written by **gcc_riscv32**. There is an extra slash (/). - - + +The PATH is incorrectly written by **gcc_riscv32**. There is an extra slash (/). + + ``` ~/gcc_riscv32/bin/:/data/toolchain/ - ``` - +``` + - **Solution** - Modify the PATH by deleting the slash (/). - - + +Modify the PATH by deleting the slash (/). + + ``` ~/gcc_riscv32/bin:/data/toolchain/ ``` @@ -158,42 +179,47 @@ ### The Message Indicating Python Cannot Be Found Is Displayed During the Build Process - **Symptom** - The following error occurs during the build process: - - + +The following error occurs during the build process: + + ``` -bash: /usr/bin/python: No such file or directory - ``` - +``` + - **Possible Cause 1** - Python is not installed. - + +Python is not installed. + - **Solution** - Run the following command to install Python. The following uses Python 3.8 as an example. - - + +Run the following command to install Python. The following uses Python 3.8 as an example. + + ``` sudo apt-get install python3.8 - ``` - +``` + - **Possible Cause 2** - The soft link that points to the Python does not exist in the **usr/bin** directory. - - ![en-us_image_0000001243200677](figures/en-us_image_0000001243200677.png) - + +The soft link that points to the Python does not exist in the **usr/bin** directory. + +![en-us_image_0000001243200677](figures/en-us_image_0000001243200677.png) + - **Solution** - Run the following commands to add a soft link: - - + +Run the following commands to add a soft link: + + ``` # cd /usr/bin/ # which python3 # ln -s /usr/local/bin/python3 python # python --version - ``` - - Example: - +``` + +Example: + ![en-us_image_0000001243320787](figures/en-us_image_0000001243320787.png) @@ -204,12 +230,14 @@ ![en-us_image_0000001251276255](figures/en-us_image_0000001251276255.png) - **Possible Causes** - Python 3 is not installed. - + +Python 3 is not installed. + - **Solution** - Run the following command to install Python 3: - - + +Run the following command to install Python 3: + + ``` sudo apt-get install python3.8 ``` diff --git a/en/device-dev/faqs/faqs-burning.md b/en/device-dev/faqs/faqs-burning.md index 631579e20b..80d948564f 100644 --- a/en/device-dev/faqs/faqs-burning.md +++ b/en/device-dev/faqs/faqs-burning.md @@ -7,30 +7,32 @@ ### "Error: Opening COMxx: Access denied" Displayed When I Start Burning - **Symptom** - **Error: Opening COMxx: Access denied** is displayed after clicking **Burn** and selecting a serial port. - + +**Error: Opening COMxx: Access denied** is displayed after clicking **Burn** and selecting a serial port. + **Figure 1** Failed to open the serial port - ![en-us_image_0000001243481961](figures/en-us_image_0000001243481961.png) - + ![en-us_image_0000001243481961](figures/en-us_image_0000001243481961.png) + - **Possible Causes** - The serial port is in use. - + +The serial port is in use. + - **Solution** 1. Search for the terminal using serial-xx from the drop-down list in the **TERMINAL** panel. - + **Figure 2** Checking whether the serial port is in use ![en-us_image_0000001243481989](figures/en-us_image_0000001243481989.png) 2. Click the dustbin icon as shown below to disable the terminal using the serial port. - + **Figure 3** Disabling the terminal using the serial port ![en-us_image_0000001243082093](figures/en-us_image_0000001243082093.png) 3. Click **Burn**, select the serial port, and start burning images again. - + **Figure 4** Restarting the burning task ![en-us_image_0000001198322224](figures/en-us_image_0000001198322224.png) @@ -39,34 +41,42 @@ ### The Image Failed To Be Burnt - **Symptom** - The burning status is not displayed after clicking **Burn** and selecting a serial port. - + +The burning status is not displayed after clicking **Burn** and selecting a serial port. + - **Possible Causes** - The IDE is not restarted after the DevEco plug-in is installed. - + +The IDE is not restarted after the DevEco plug-in is installed. + - **Solution** + Restart the IDE. ### No Command Output Is Displayed - **Symptom** - The serial port shows that the connection has been established. After the board is restarted, nothing is displayed when you press **Enter**. - + +The serial port shows that the connection has been established. After the board is restarted, nothing is displayed when you press **Enter**. + - **Possible Cause 1** - The serial port is connected incorrectly. - + +The serial port is connected incorrectly. + - **Solution** - Change the serial port number. - - Start **Device Manager** to check whether the serial port connected to the board is the same as that connected to the terminal device. If the serial ports are different, perform step 1 in the **Running an Image** section to change the serial port number. - + +Change the serial port number. + +Start **Device Manager** to check whether the serial port connected to the board is the same as that connected to the terminal device. If the serial ports are different, perform step 1 in the **Running an Image** section to change the serial port number. + - **Possible Cause 2** - The U-Boot of the board is damaged. - + +The U-Boot of the board is damaged. + - **Solution** - Burn the U-Boot. - + +Burn the U-Boot. + If the fault persists after you perform the preceding operations, the U-Boot of the board may be damaged. You can burn the U-Boot by performing the following steps: 1. Obtain the U-Boot file. @@ -90,41 +100,42 @@ ### Windows-based PC Failed to Be Connected to the Board - **Symptom** - The file image cannot be obtained after clicking **Burn** and selecting a serial port. - + +The file image cannot be obtained after clicking **Burn** and selecting a serial port. + **Figure 6** Failed to obtain the file image due to network disconnection - - ![en-us_image_0000001198322428](figures/en-us_image_0000001198322428.png) - + + ![en-us_image_0000001198322428](figures/en-us_image_0000001198322428.png) + - **Possible Causes** - The board is disconnected from the Windows-based PC. - - Windows Firewall does not allow Visual Studio Code to access the network. - + +The board is disconnected from the Windows-based PC. + +Windows Firewall does not allow Visual Studio Code to access the network. + - **Solution** -1. Check whether the network cable is properly connected. + 1. Check whether the network cable is properly connected. + 2. Click **Windows Firewall**. -2. Click **Windows Firewall**. - - **Figure 7** Setting the firewall - - ![en-us_image_0000001198162584](figures/en-us_image_0000001198162584.png) +**Figure 7** Setting the firewall + +![en-us_image_0000001198162584](figures/en-us_image_0000001198162584.png) 3. Click **Firewall & network protection**, and on the displayed page, click **Allow an app through the firewall**. - - **Figure 8** Firewall & network protection - - ![en-us_image_0000001198323146](figures/en-us_image_0000001198323146.png) + +**Figure 8** Firewall & network protection + +![en-us_image_0000001198323146](figures/en-us_image_0000001198323146.png) 4. Select Visual Studio Code. - - **Figure 9** Selecting Visual Studio Code + +**Figure 9** Selecting Visual Studio Code - ![en-us_image_0000001198003232](figures/en-us_image_0000001198003232.png) +![en-us_image_0000001198003232](figures/en-us_image_0000001198003232.png) 5. Select the **Private** and **Public** network access rights for Visual Studio Code. - - **Figure 10** Allowing Visual Studio Code to access the network - - ![en-us_image_0000001243084579](figures/en-us_image_0000001243084579.png) + +**Figure 10** Allowing Visual Studio Code to access the network + +![en-us_image_0000001243084579](figures/en-us_image_0000001243084579.png) \ No newline at end of file diff --git a/en/device-dev/faqs/faqs-environment-setup.md b/en/device-dev/faqs/faqs-environment-setup.md index 7203aa59ff..effd865289 100644 --- a/en/device-dev/faqs/faqs-environment-setup.md +++ b/en/device-dev/faqs/faqs-environment-setup.md @@ -7,15 +7,18 @@ ### What should I do if garbled characters and segmentation faults occur during hb installation? - **Symptom** - Garbled characters and segmentation faults occur during the execution of the **python3 -m pip install --user ohos-build** command. - + +Garbled characters and segmentation faults occur during the execution of the **python3 -m pip install --user ohos-build** command. + - **Possible Causes** - pip is of an early version. - + +pip is of an early version. + - **Solution** - Upgrade pip. - - + +Upgrade pip. + + ``` python3 -m pip install -U pip ``` @@ -24,15 +27,18 @@ ### What should I do if the message "cannot import 'sysconfig' from 'distutils'" is displayed during hb installation? - **Symptom** - The message "cannot import 'sysconfig' from 'distutils'" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. - + +The message "cannot import 'sysconfig' from 'distutils'" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. + - **Possible Causes** - The **distutils** module is unavailable. - + +The **distutils** module is unavailable. + - **Solution** - Install **distutils**. - - + +Install **distutils**. + + ``` sudo apt-get install python3.8-distutils ``` @@ -41,15 +47,18 @@ ### What should I do if the message "module 'platform' has no attribute 'linux_distribution'" is displayed during hb installation? - **Symptom** - The message "module 'platform' has no attribute 'linux_distribution'" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. - + +The message "module 'platform' has no attribute 'linux_distribution'" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. + - **Possible Causes** - There is a compatibility issue of python3-pip. - + +There is a compatibility issue of python3-pip. + - **Solution** - Reinstall pip. - - + +Reinstall pip. + + ``` sudo apt remove python3-pip curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py @@ -60,15 +69,18 @@ ### What should I do if the message "Could not find a version that satisfies the requirement ohos-build" is displayed during hb installation? - **Symptom** - The message "Could not find a version that satisfies the requirement ohos-build" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. - + +The message "Could not find a version that satisfies the requirement ohos-build" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. + - **Possible Causes** - The installation fails due to poor network connectivity. - + +The installation fails due to poor network connectivity. + - **Solution** + 1. Ensure that your computer has a good network connection. If the network connection is unstable, rectify the network fault and reinstall hb. 2. If the network is functional, run the following commands to install hb by specifying a temporary PyPI source: - + ``` python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple ohos-build ``` @@ -77,17 +89,20 @@ ### What should I do if the message "configure: error: no acceptable C compiler found in $PATH" is displayed during Python 3 installation? - **Symptom** - The following error occurs during Python 3 installation: - - + +The following error occurs during Python 3 installation: + + ``` configure: error: no acceptable C compiler found in $PATH. See 'config.log' for more details - ``` - +``` + - **Possible Causes** - **gcc** is not installed. - + +**gcc** is not installed. + - **Solution** + 1. Run the **apt-get install gcc** command to install **gcc** online. 2. After the installation, reinstall Python 3. @@ -95,17 +110,20 @@ ### What should I do if the message "-bash: make: command not found is displayed" during Python 3 installation? - **Symptom** - The following error occurs during Python 3 installation: - - + +The following error occurs during Python 3 installation: + + ``` -bash: make: command not found - ``` - +``` + - **Possible Causes** - **Make** is not installed. - + +**Make** is not installed. + - **Solution** + 1. Run the **apt-get install make** command to install Make online. 2. After the installation, reinstall Python 3. @@ -113,92 +131,104 @@ ### What should I do if the message **zlib not available** is displayed during Python 3 installation? - **Symptom** - The following error occurs during Python 3 installation: - - + +The following error occurs during Python 3 installation: + + ``` zipimport.ZipImportError: can't decompress data; zlib not available - ``` - +``` + - **Possible Causes** - **zlib** is not installed. - + +**zlib** is not installed. + - **Solution** - Solution 1: Run the **apt-get install zlib** command to install **zlib** online. - - Solution 2: If the software source does not contain **zlib**, download the source code from http://www.zlib.net/. - - ![en-us_image_0000001198001086](figures/en-us_image_0000001198001086.png) - - Then run the following commands to install **zlib** offline: - - + +Solution 1: Run the **apt-get install zlib** command to install **zlib** online. + +Solution 2: If the software source does not contain **zlib**, download the source code from http://www.zlib.net/. + +![en-us_image_0000001198001086](figures/en-us_image_0000001198001086.png) + +Then run the following commands to install **zlib** offline: + + ``` # tar xvf zlib-1.2.11.tar.gz # cd zlib-1.2.11 # ./configure # make && make install - ``` - +``` + After the installation, reinstall Python 3. ### What should I do if the message "No module named 'Crypto'" is displayed during the build process? - **Symptom** - The following error occurs during compilation and building: - - + +The following error occurs during compilation and building: + + ``` ModuleNotFoundError: No module named 'Crypto' - ``` - +``` + - **Possible Causes** - **Crypto** is not installed. - + +**Crypto** is not installed. + - **Solution** - Solution 1: Run the **pip3 install Crypto** command to install **Crypto** online. - - Method 2: Offline installation - - Download the source code from [PyPI](https://pypi.org/project/pycrypto/#files). - - ![en-us_image_0000001251196005](figures/en-us_image_0000001251196005.png) - - Save the source package to the Linux server, decompress the package, and run the **python3 setup.py install** command to install Crypto. - + +Solution 1: Run the **pip3 install Crypto** command to install **Crypto** online. + +Method 2: Offline installation + +Download the source code from [PyPI](https://pypi.org/project/pycrypto/#files). + +![en-us_image_0000001251196005](figures/en-us_image_0000001251196005.png) + +Save the source package to the Linux server, decompress the package, and run the **python3 setup.py install** command to install Crypto. + After the preceding installation is complete, rebuild an environment. ### What should I do when an error with **lsb_release** occurs during **kconfiglib** installation? - **Symptom** - The following error occurs during **kconfiglib** installation: - - + +The following error occurs during **kconfiglib** installation: + + ``` subprocess.CalledProcessError: Command '('lsb_release', '-a')' returned non-zero exit status 1. - ``` - +``` + - **Possible Causes** - The Python version matched with the **lsb_release** module is different from the current Python version. - + +The Python version matched with the **lsb_release** module is different from the current Python version. + - **Solution** + Run the **find / -name lsb_release** command, for example, **sudo rm -rf /usr/bin/lsb_release** to locate and delete **lsb_release**. ### What should I do if the message "ImportError: No module named apt_pkg" is displayed during the execution of an unidentifiable command? - **Symptom** - The message "ImportError: No module named apt_pkg" is displayed when an unidentifiable command is executed on the Linux server. - + +The message "ImportError: No module named apt_pkg" is displayed when an unidentifiable command is executed on the Linux server. + - **Possible Causes** - There is a compatibility issue of python3-apt. - + +There is a compatibility issue of python3-apt. + - **Solution** - Reinstall python3-apt. - - + +Reinstall python3-apt. + + ``` sudo apt-get remove python3-apt sudo apt-get install python3-apt diff --git a/en/device-dev/faqs/faqs-system-applications.md b/en/device-dev/faqs/faqs-system-applications.md index a4125f6889..6bd7928f2c 100644 --- a/en/device-dev/faqs/faqs-system-applications.md +++ b/en/device-dev/faqs/faqs-system-applications.md @@ -20,7 +20,7 @@ The compiled executable program is run directly without being converted to an ap Call the **UtilsSetEnv** function of the KV store to set the data storage path. - + ``` UtilsSetEnv("/storage/com.example.kv"); ``` @@ -38,7 +38,7 @@ There is no such a global variable. You can obtain DOM elements via the **ref** attribute. You can use methods of the obtained elements but cannot change their attributes. The sample code is as follows: - + ``` @@ -77,7 +77,7 @@ You can pass values through **params** of the **router.replace** method. The sam Set **params** to the values to be passed on a page. The sample code is as follows: - + ``` router.replace({ uri:'pages/detail/detail', // URI of the page to be redirected to. @@ -87,7 +87,7 @@ router.replace({ Receive the passed values on another page. - + ``` onInit(){ const data = this.transferData; // Use the onInit function to receive the passed data. @@ -141,7 +141,7 @@ The object or its attributes are not defined before dynamic binding. ### How do I implement relative and absolute positioning? -You can use the **
** and **** (with **top** and **left** attributes) components to implement relative positioning and absolute positioning. +You can use the **** and **** (with **top** and **left** attributes) components to implement relative positioning and absolute positioning. ### How do I display or hide a component? @@ -180,9 +180,11 @@ Do not include too many elements in an array. Avoid frequent operations on a lar ### Why does hdc_std fail to connect to a device? - **Symptom** - After the **hdc_std list targets** command is executed, **[Empty]** is displayed. - + +After the **hdc_std list targets** command is executed, **[Empty]** is displayed. + - **Solution** + 1. The device cannot be identified. Check whether **HDC Device** exists under the **Universal Serial Bus controllers** in the **Device Manager**. If **HDC Device** does not exist, the device cannot be connected. In this case, disconnect and then reconnect the USB connection between the test PC and the OpenHarmony device, or burn the latest image. 2. hdc_std works improperly. @@ -194,7 +196,9 @@ Do not include too many elements in an array. Avoid frequent operations on a lar ### hdc_std fail to run - **Symptom** - After you click **hdc_std.exe**, the file fails to execute. - + +After you click **hdc_std.exe**, the file fails to execute. + - **Solution** + **hdc_std.exe** requires no installation. You can use it after placing it to a local directory or adding the tool path to environment variables. Run the **cmd** command and then run the **hdc_std** command to start the tool. diff --git a/en/device-dev/quick-start/quickstart-standard-faq-hb.md b/en/device-dev/quick-start/quickstart-standard-faq-hb.md index f70d8caa2f..b10a92e128 100644 --- a/en/device-dev/quick-start/quickstart-standard-faq-hb.md +++ b/en/device-dev/quick-start/quickstart-standard-faq-hb.md @@ -4,15 +4,18 @@ ## What should I do if garbled characters and segmentation faults occur during hb installation? - **Symptom** - Garbled characters and segmentation faults occur during the execution of the **python3 -m pip install --user ohos-build** command. - + +Garbled characters and segmentation faults occur during the execution of the **python3 -m pip install --user ohos-build** command. + - **Possible Causes** - pip is of an early version. - + +pip is of an early version. + - **Solution** - Upgrade pip. - - + +Upgrade pip. + + ``` python3 -m pip install -U pip ``` @@ -21,15 +24,18 @@ ## What should I do if the message "cannot import 'sysconfig' from 'distutils'" is displayed during hb installation? - **Symptom** - The message "cannot import 'sysconfig' from 'distutils'" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. - + +The message "cannot import 'sysconfig' from 'distutils'" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. + - **Possible Causes** - The **distutils** module is unavailable. - + +The **distutils** module is unavailable. + - **Solution** - Install distutils. - - + +Install distutils. + + ``` sudo apt-get install python3.8-distutils ``` @@ -38,15 +44,18 @@ ## What should I do if the message "module 'platform' has no attribute 'linux_distribution'" is displayed during hb installation? - **Symptom** - The message "module 'platform' has no attribute 'linux_distribution'" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. - + +The message "module 'platform' has no attribute 'linux_distribution'" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. + - **Possible Causes** - There is a compatibility issue of python3-pip. - + +There is a compatibility issue of python3-pip. + - **Solution** - Reinstall pip. - - + +Reinstall pip. + + ``` sudo apt remove python3-pip curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py @@ -57,15 +66,18 @@ ## What should I do if the message "Could not find a version that satisfies the requirement ohos-build" is displayed during hb installation? - **Symptom** - The message "Could not find a version that satisfies the requirement ohos-build" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. - + +The message "Could not find a version that satisfies the requirement ohos-build" is displayed during the execution of the **python3 -m pip install --user ohos-build** command. + - **Possible Causes** - The installation fails due to poor network connectivity. - + +The installation fails due to poor network connectivity. + - **Solution** + 1. Ensure that your computer has a good network connection. If the network connection is unstable, rectify the network fault and reinstall hb. 2. If the network is functional, run the following commands to install hb by specifying a temporary PyPI source: - + ``` python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple ohos-build ``` -- GitLab