setting-up-the-environment-1.md 6.8 KB
Newer Older
M
mamingshuai 已提交
1
# Setting Up the Environment<a name="EN-US_TOPIC_0000001105829366"></a>
N
NEEN 已提交
2

M
mamingshuai 已提交
3 4 5
-   [Environment Requirements](#section179175261196)
    -   [Hardware](#section5840424125014)
    -   [Software](#section965634210501)
N
NEEN 已提交
6

M
mamingshuai 已提交
7
-   [Installing Linux Build Tools](#section182916865219)
N
NEEN 已提交
8 9
    -   [Changing Linux Shell to Bash](#section1715027152617)
    -   [Installing Basic Software Used for Compilation and Building \(Required Only for Ubuntu 20+\)](#section45512412251)
M
mamingshuai 已提交
10 11
    -   [Installing a File Packing Tool](#section1969111820270)
    -   [Installing the JVM](#section1692618112713)
N
NEEN 已提交
12 13


M
mamingshuai 已提交
14
## Environment Requirements<a name="section179175261196"></a>
N
NEEN 已提交
15

M
mamingshuai 已提交
16
### Hardware<a name="section5840424125014"></a>
N
NEEN 已提交
17 18

-   Hi3516D V300 IoT camera development board
M
mamingshuai 已提交
19
-   USB-to-serial cable and network cable \(The Windows workstation is connected to the Hi3516D V300 development board through the USB-to-serial cable and network cable.\)
N
NEEN 已提交
20 21 22 23 24 25 26 27

The following figure shows the hardware connections.

**Figure  1**  Hardware connections<a name="fig19527104710591"></a>  


![](figures/矩形备份-292.png)

M
mamingshuai 已提交
28
### Software<a name="section965634210501"></a>
N
NEEN 已提交
29 30

>![](public_sys-resources/icon-notice.gif) **NOTICE:** 
M
mamingshuai 已提交
31
>This section describes how to use an installation package to set up the compilation and development environment. If you are going to use Docker to set up the environment, skip this section and  [Installing Linux Build Tools](#section182916865219).
N
NEEN 已提交
32 33 34 35 36 37 38 39 40 41 42 43 44 45

The following table describes the tools required for setting up the general environment for a Linux server of the Hi3516 development board and how to obtain these tools.

**Table  1**  Development tools and obtaining methods

<a name="table6299192712513"></a>
<table><thead align="left"><tr id="row122993276512"><th class="cellrowborder" valign="top" width="13.081308130813083%" id="mcps1.2.4.1.1"><p id="p1829914271858"><a name="p1829914271858"></a><a name="p1829914271858"></a>Development Tool</p>
</th>
<th class="cellrowborder" valign="top" width="19.921992199219922%" id="mcps1.2.4.1.2"><p id="p429918274517"><a name="p429918274517"></a><a name="p429918274517"></a>Description</p>
</th>
<th class="cellrowborder" valign="top" width="66.996699669967%" id="mcps1.2.4.1.3"><p id="p12997271757"><a name="p12997271757"></a><a name="p12997271757"></a>How to Obtain</p>
</th>
</tr>
</thead>
N
NEEN 已提交
46
<tbody><tr id="row167343191518"><td class="cellrowborder" valign="top" width="13.081308130813083%" headers="mcps1.2.4.1.1 "><p id="p467443191517"><a name="p467443191517"></a><a name="p467443191517"></a>bash</p>
N
NEEN 已提交
47
</td>
N
NEEN 已提交
48
<td class="cellrowborder" valign="top" width="19.921992199219922%" headers="mcps1.2.4.1.2 "><p id="p0674153114151"><a name="p0674153114151"></a><a name="p0674153114151"></a>Processes CLI commands.</p>
N
NEEN 已提交
49
</td>
N
NEEN 已提交
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
<td class="cellrowborder" valign="top" width="66.996699669967%" headers="mcps1.2.4.1.3 "><p id="p116746312151"><a name="p116746312151"></a><a name="p116746312151"></a>System configuration</p>
</td>
</tr>
<tr id="row14885193315201"><td class="cellrowborder" valign="top" width="13.081308130813083%" headers="mcps1.2.4.1.1 "><p id="p137174662119"><a name="p137174662119"></a><a name="p137174662119"></a>Basic software package for compilation and building (required only for Ubuntu 20+)</p>
</td>
<td class="cellrowborder" valign="top" width="19.921992199219922%" headers="mcps1.2.4.1.2 "><p id="p258814561424"><a name="p258814561424"></a><a name="p258814561424"></a>Provides a basic software package for compilation and building.</p>
</td>
<td class="cellrowborder" valign="top" width="66.996699669967%" headers="mcps1.2.4.1.3 "><p id="p1749611716181"><a name="p1749611716181"></a><a name="p1749611716181"></a>Internet</p>
</td>
</tr>
<tr id="row52253812238"><td class="cellrowborder" valign="top" width="13.081308130813083%" headers="mcps1.2.4.1.1 "><p id="p28007392236"><a name="p28007392236"></a><a name="p28007392236"></a>dosfstools, mtools, and mtd-utils</p>
</td>
<td class="cellrowborder" valign="top" width="19.921992199219922%" headers="mcps1.2.4.1.2 "><p id="p98008390232"><a name="p98008390232"></a><a name="p98008390232"></a>Pack files.</p>
</td>
<td class="cellrowborder" valign="top" width="66.996699669967%" headers="mcps1.2.4.1.3 "><p id="p280018394233"><a name="p280018394233"></a><a name="p280018394233"></a>apt-get install</p>
N
NEEN 已提交
65 66 67 68 69 70 71 72 73 74 75 76
</td>
</tr>
<tr id="row29204072315"><td class="cellrowborder" valign="top" width="13.081308130813083%" headers="mcps1.2.4.1.1 "><p id="p5921190162318"><a name="p5921190162318"></a><a name="p5921190162318"></a>Java virtual machine (JVM)</p>
</td>
<td class="cellrowborder" valign="top" width="19.921992199219922%" headers="mcps1.2.4.1.2 "><p id="p17921110152311"><a name="p17921110152311"></a><a name="p17921110152311"></a>Compiles, debugs, and runs Java programs.</p>
</td>
<td class="cellrowborder" valign="top" width="66.996699669967%" headers="mcps1.2.4.1.3 "><p id="p16921805237"><a name="p16921805237"></a><a name="p16921805237"></a>apt-get install</p>
</td>
</tr>
</tbody>
</table>

M
mamingshuai 已提交
77
## Installing Linux Build Tools<a name="section182916865219"></a>
N
NEEN 已提交
78 79

>![](public_sys-resources/icon-notice.gif) **NOTICE:** 
M
mamingshuai 已提交
80 81
>-   If you acquire the source code using an HPM component or HPM CLI tool, you do not need to install compilation tools like  **LLVM**  and  **hc-gen**.
>-   \(Recommended\) If you obtain the source code through an image site or a code repository, you should install  **hc-gen**. When installing the compilation tool, ensure that its environment variable path is unique.
N
NEEN 已提交
82

N
NEEN 已提交
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
### Changing Linux Shell to Bash<a name="section1715027152617"></a>

Check whether bash is used as the shell.

```
ls -l /bin/sh
```

If  **/bin/sh -\> bash**  is not displayed, do as follows to change shell to bash.

**Method 1:**  Run the following command on the device and then click  **No**.

```
sudo dpkg-reconfigure dash
```

**Method 2:**  Run the first command to delete  **sh**  and then run the second command to create a new soft link.

```
sudo rm -rf /bin/sh
sudo ln -s /bin/bash /bin/sh
```

### Installing Basic Software Used for Compilation and Building \(Required Only for Ubuntu 20+\)<a name="section45512412251"></a>

Install the software.

```
sudo apt-get install build-essential && sudo apt-get install gcc && sudo apt-get install g++ && sudo apt-get install make && sudo apt-get install zlib* && sudo apt-get install libffi-dev
```

M
mamingshuai 已提交
114
### Installing a File Packing Tool<a name="section1969111820270"></a>
N
NEEN 已提交
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135

1.  Start a Linux server.
2.  Install  **dosfstools**.

    ```
    sudo apt-get install dosfstools
    ```

3.  Install  **mtools**.

    ```
    sudo apt-get install mtools
    ```

4.  Install  **mtd-utils**.

    ```
    sudo apt-get install mtd-utils
    ```


M
mamingshuai 已提交
136
### Installing the JVM<a name="section1692618112713"></a>
N
NEEN 已提交
137 138 139 140 141 142 143 144 145 146 147 148 149 150 151

1.  Start a Linux server.
2.  Install the Java Runtime Environment \(JRE\).

    ```
    sudo apt-get install default-jre
    ```

3.  Install the Java Development Kit \(JDK\).

    ```
    sudo apt-get install default-jdk
    ```