mirror of
https://github.com/jerryscript-project/jerryscript.git
synced 2025-12-15 16:29:21 +00:00
- DEVELOPMENT.md is extended with bash utilites. - Internals doc added and DEVELOPMENT is renamed to GETTING-STARTED. - modified image links in Internals - links are fixed in README.md JerryScript-DCO-1.0-Signed-off-by: István Kádár ikadar@inf.u-szeged.hu
68 lines
1.4 KiB
Markdown
68 lines
1.4 KiB
Markdown
### Setting Up Prerequisites
|
|
|
|
Currently, only Ubuntu 14.04+ is officially supported as primary development environment.
|
|
|
|
There are several dependencies, that should be installed manually. The following list is required for building:
|
|
|
|
- `gcc` higher than `4.8.2`
|
|
- native
|
|
- arm-none-eabi
|
|
- `cmake` higher than `2.8.12.2`
|
|
- `make` higher than `3.81`
|
|
- `bash` higher than `4.3.11`
|
|
- `cppcheck` higher than 1.61
|
|
- `vera++` higher than 1.2.1
|
|
|
|
```bash
|
|
sudo apt-get install gcc g++ gcc-arm-none-eabi cmake cppcheck vera++
|
|
```
|
|
|
|
To make our scripts run correctly, several shell utilities should be available on the system:
|
|
|
|
- `find`
|
|
- `bc`
|
|
- `awk`
|
|
- `sed`
|
|
- `sha256sum`
|
|
- `wget`
|
|
|
|
Upon first build, `make` would try to setup prerequisites, required for further development and pre-commit testing:
|
|
|
|
- STM32F3 and STM32F4 libraries
|
|
|
|
```bash
|
|
make prerequisites -j
|
|
```
|
|
|
|
It may take time, so go grab some coffee:
|
|
|
|
```bash
|
|
Setting up prerequisites... (log file: ./build/prerequisites/prerequisites.log)
|
|
```
|
|
|
|
### Building Debug Version
|
|
|
|
To build debug version for Linux:
|
|
|
|
```bash
|
|
make debug.linux -j
|
|
```
|
|
|
|
To build debug version for Linux without LTO (Link Time Optimization):
|
|
|
|
```bash
|
|
LTO=OFF make debug.linux -j
|
|
```
|
|
|
|
### Checking Patch
|
|
|
|
```bash
|
|
make precommit -j
|
|
```
|
|
|
|
If some style guidelines, build or test runs fail during precommit, then this is indicated with a message like this:
|
|
|
|
```
|
|
Build failed. See ./build/bin/unittests/make.log for details.
|
|
```
|