aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: cf180aeabe14e56fd250fce6a43fdd107c155ba5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# trimui toolchain Docker image

## Installation

With Docker installed and running, `make shell` builds the toolchain and drops into a shell inside the container. The container's `~/workspace` is bound to `./workspace` by default. The toolchain is located at `/opt/trimui-toolchain` inside the container, libraries are in `/opt/trimui-toolchain/arm-buildroot-linux-gnueabi/sysroot/usr/lib/`.

After building the first time, unless a dependency of the image has changed, `make shell` will skip building and drop into the shell.

## Workflow

- On your host machine, clone repositories into `./workspace` and make changes as usual.
- In the container shell, find the repository in `~/workspace` and build as usual.

### Adding additional files to the toolchain sysroot

Put files that you want included in the sysroot (libs and headers, you've built, etc.) in `./extras`. They will be copied to `$SYSROOT/usr` as the container is built.

### Changing the buildroot configuration

In `~/buildroot`:

- `make menuconfig`, change options
- `make savedefconfig BR2_DEFCONFIG=../workspace/defconfig`

Then, on the host, copy `./workspace/defconfig` to `./trimui_config/configs/trimui_defconfig`.

## Docker for Mac

Docker for Mac has a memory limit that can make the toolchain build fail. Follow [these instructions](https://docs.docker.com/docker-for-mac/) to increase the memory limit.