mirror of
https://github.com/trezor/trezor-firmware.git
synced 2025-02-17 01:52:02 +00:00
docs: make build instructions more compact, reflect use of pipenv
This commit is contained in:
parent
ac33a0f86e
commit
75fb38f63c
@ -9,92 +9,78 @@ git clone --recursive https://github.com/trezor/trezor-core.git
|
|||||||
cd trezor-core
|
cd trezor-core
|
||||||
```
|
```
|
||||||
|
|
||||||
If are building the already cloned the project, don't forget to use the following to refresh the submodules:
|
If you are building from an existing checkout, don't forget to use the following to refresh the submodules:
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
make vendor
|
make vendor
|
||||||
```
|
```
|
||||||
|
|
||||||
### Linux
|
Install the required packages, depending on your operating system.
|
||||||
|
* __Debian/Ubuntu__:
|
||||||
#### Debian/Ubuntu
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
sudo pip3 install --no-cache-dir pyblake2
|
|
||||||
|
|
||||||
sudo dpkg --add-architecture i386
|
sudo dpkg --add-architecture i386
|
||||||
sudo apt-get update
|
sudo apt-get update
|
||||||
sudo apt-get install scons libsdl2-dev:i386 libsdl2-image-dev:i386 gcc-multilib
|
sudo apt-get install scons libsdl2-dev:i386 libsdl2-image-dev:i386 gcc-multilib
|
||||||
|
|
||||||
make build_unix
|
|
||||||
```
|
```
|
||||||
|
* __Fedora__:
|
||||||
#### Fedora
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
sudo pip3 install --no-cache-dir pyblake2
|
|
||||||
|
|
||||||
sudo yum install scons SDL2-devel.i686 SDL2_image-devel.i686
|
sudo yum install scons SDL2-devel.i686 SDL2_image-devel.i686
|
||||||
|
|
||||||
make build_unix
|
|
||||||
```
|
```
|
||||||
|
* __OpenSUSE__:
|
||||||
#### openSUSE
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
sudo pip3 install --no-cache-dir pyblake2
|
|
||||||
|
|
||||||
sudo zypper install scons libSDL2-devel-32bit libSDL2_image-devel-32bit
|
sudo zypper install scons libSDL2-devel-32bit libSDL2_image-devel-32bit
|
||||||
|
|
||||||
make build_unix
|
|
||||||
```
|
```
|
||||||
|
* __Arch__:
|
||||||
#### Arch
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
sudo pip3 install --no-cache-dir pyblake2
|
|
||||||
|
|
||||||
sudo pacman -S gcc-multilib scons lib32-sdl2 lib32-sdl2_image
|
sudo pacman -S gcc-multilib scons lib32-sdl2 lib32-sdl2_image
|
||||||
|
|
||||||
make build_unix
|
|
||||||
```
|
```
|
||||||
|
* __Mac OS X__:
|
||||||
### OS X
|
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
pip3 install --no-cache-dir pyblake2
|
|
||||||
|
|
||||||
brew install scons sdl2 sdl2_image
|
brew install scons sdl2 sdl2_image
|
||||||
|
```
|
||||||
|
* __Windows__: not supported yet, sorry.
|
||||||
|
|
||||||
|
|
||||||
|
Run the build with:
|
||||||
|
```sh
|
||||||
make build_unix
|
make build_unix
|
||||||
```
|
```
|
||||||
|
|
||||||
### Windows
|
Now you can start the emulator:
|
||||||
|
```sh
|
||||||
Not supported yet ...
|
./emu.sh
|
||||||
|
```
|
||||||
|
|
||||||
## Build instructions for Embedded (ARM port)
|
## Build instructions for Embedded (ARM port)
|
||||||
|
|
||||||
### Linux
|
### Requirements
|
||||||
|
|
||||||
For flashing firmware to blank device (without bootloader) use `make flash`,
|
You will need the GCC ARM toolchain for building and OpenOCD for flashing to a device.
|
||||||
or `make flash STLINK_VER=v2-1` if using a ST-LINK/V2.1 interface.
|
You will also need Python dependencies for signing.
|
||||||
You need to have OpenOCD installed.
|
|
||||||
|
|
||||||
#### Debian/Ubuntu
|
#### Debian/Ubuntu
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
sudo pip3 install --no-cache-dir click pyblake2 scons
|
|
||||||
sudo pip3 install --no-deps git+https://github.com/trezor/python-trezor.git@master
|
|
||||||
|
|
||||||
sudo apt-get install gcc-arm-none-eabi libnewlib-arm-none-eabi
|
sudo apt-get install gcc-arm-none-eabi libnewlib-arm-none-eabi
|
||||||
|
|
||||||
make vendor build_boardloader build_bootloader build_firmware
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### OS X
|
#### OS X
|
||||||
|
|
||||||
1. Download [gcc-arm-none-eabi](https://launchpad.net/gcc-arm-embedded/5.0/5-2016-q3-update/)
|
1. Download [gcc-arm-none-eabi](https://launchpad.net/gcc-arm-embedded/5.0/5-2016-q3-update/)
|
||||||
2. Follow the [install instructions](https://launchpadlibrarian.net/287100883/readme.txt)
|
2. Follow the [install instructions](https://launchpadlibrarian.net/287100883/readme.txt)
|
||||||
3. To install OpenOCD, run `brew install open-ocd`
|
3. To install OpenOCD, run `brew install open-ocd`
|
||||||
4. Run `make vendor build_boardloader build_bootloader build_firmware`
|
4. Run `make vendor build_boardloader build_bootloader build_firmware`
|
||||||
|
|
||||||
|
### Building
|
||||||
|
|
||||||
|
```sh
|
||||||
|
sudo pip3 install pipenv
|
||||||
|
pipenv install
|
||||||
|
pipenv run make vendor build_boardloader build_bootloader build_firmware
|
||||||
|
```
|
||||||
|
|
||||||
|
### Flashing
|
||||||
|
|
||||||
|
For flashing firmware to blank device (without bootloader) use `make flash`,
|
||||||
|
or `make flash STLINK_VER=v2-1` if using a ST-LINK/V2.1 interface.
|
||||||
|
You need to have OpenOCD installed.
|
||||||
|
Loading…
Reference in New Issue
Block a user