The compilation fails, and **usr/sbin/ninja: invalid option -- w** is displayed.
The compilation fails, and **usr/sbin/ninja: invalid option -- w** is displayed.
-**Possible Causes**
The Ninja version in the compilation environment is outdated and does not support the **--w** option.
The Ninja version in the compilation environment is outdated and does not support the --w option.
-**Solution**
Uninstall Ninja and GN in the environment and reinstall them by following instructions in [Obtaining Tools](../get-code/gettools-ide.md).
...
...
@@ -23,16 +24,18 @@ The Ninja version in the compilation environment is outdated and does not suppor
-**Symptom**
The compilation fails, and **/usr/bin/ld: cannot find -lncurses** is displayed.
The compilation fails, and **/usr/bin/ld: cannot find -lncurses** is displayed.
-**Possible Causes**
The ncurses library is not installed.
The ncurses library is not installed.
-**Solution**
```
Run **sudo apt-get install lib32ncurses5-dev** to install the library.
sudo apt-get install lib32ncurses5-dev
```
...
...
@@ -40,16 +43,18 @@ The ncurses library is not installed.
-**Symptom**
The compilation fails, and **line 77: mcopy: command not found** is displayed.
The compilation fails, and **line 77: mcopy: command not found** is displayed.
-**Possible Causes**
Mcopy is not installed.
Mcopy is not installed.
-**Solution**
```
Run **sudo apt-get install dosfstools mtools** to install mcopy.
sudo apt-get install dosfstools mtools
```
...
...
@@ -57,40 +62,43 @@ Mcopy is not installed.
-**Symptom**
The compilation fails, and the following information is displayed: **riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory**.
The compilation fails, and the following information is displayed: **riscv32-unknown-elf-gcc: error trying to exec 'cc1': execvp: No such file or directory**.
-**Possible Causes**
Permission is required to access files in the **riscv** compiler path.
Permission is required to access files in the **riscv** compiler path.
-**Solution**
Run the following command to query the directory where **gcc_riscv32** is located:
1. Run the following command to query the directory where **gcc_riscv32** is located:
```
which riscv32-unknown-elf-gcc
```
```
Run the **chmod** command to change the directory permission to **755**.
2.Run the **chmod** command to change the directory permission to **755**.
### "No module named 'Crypto'" Displayed During the Build Process
-**Symptom**
The compilation fails, and **No module named'Crypto loaded** is displayed.
The compilation fails, and **No module named'Crypto loaded** is displayed.
-**Possible Causes**
Crypto is not installed in Python3.
Crypto is not installed in Python3.
-**Solution**
1. Run the following command to query the Python version:
```
```
python3 --version
```
```
2. Ensure that Python 3.7 or later is installed, and then run the following command to install pycryptodome:
```
...
...
@@ -102,12 +110,14 @@ Crypto is not installed in Python3.
-**Symptom**
The compilation fails, and **xx.sh [: xx unexpected operator** is displayed.
The compilation fails, and **xx.sh [: xx unexpected operator** is displayed.
-**Possible Causes**
The compilation environment is shell instead of bash.
The compilation environment is shell instead of bash.
-**Solution**
```
...
...
@@ -120,29 +130,32 @@ The compilation environment is shell instead of bash.
-**Symptom**
The following error occurs during compilation and building:
The following error occurs during compilation and building:
```
Could not find a version that satisfies the requirement six>=1.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).
@@ -181,8 +181,9 @@ Do not include too many elements in an array. Avoid frequent operations on a lar
-**Symptom**
After the **hdc_std list targets** command is executed, **[Empty]** is displayed.
-**Solution**
1. The device cannot be identified.
...
...
@@ -197,8 +198,9 @@ After the **hdc_std list targets** command is executed, **[Empty]** is displayed
-**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.