Sign inSign up

bensuperpc/distcc

By bensuperpc

Updated over 3 years ago

https://github.com/bensuperpc/docker-distcc

Image
0

7.5K

bensuperpc/distcc repository overview

docker-distcc

Distcc (and ccache) in docker !

Features

  • Support for multiple systems (Ubuntu, Debian, Arch, Fedora, Alpine)
  • Distcc (and ccache)
  • Easy to use and configure

Requirements

Usage

Run

First, you need to run the container. You can use the following command:

Note: You can replace debian-11 with ubuntu-20.04, archlinux-rolling, fedora-34 or alpine-3.14 ect...

docker run -d -p 3632:3632 -p 3633:3633 bensuperpc/distcc:debian-11 --allow 0.0.0.0/0

Second, you need to configure your environment to use the container. You can use the following command:

Note: You need to replace X with the number of cores you want to use, and if you want, localhost with the IP of the container.

export DISTCC_HOSTS='localhost/X localhost:3632/X'

For Cmake, you can use the following command:

Note: We use Ninja as a generator for build speed but you can use Make or other generators.

cmake -DCMAKE_C_COMPILER_LAUNCHER="ccache;distcc" -DCMAKE_CXX_COMPILER_LAUNCHER="ccache;distcc" -S . -B build -G Ninja && cmake --build build

For Make, you can use the following command:

Note: You can replace X with the number of cores you want to use.

make -jX CC="distcc gcc" CXX="distcc g++"
Build

You can build the image using the following command:

Note: You can replace debian with ubuntu, archlinux or alpine.

make debian

With tests: Note: Currently, the tests doesn't return an error code if the tests failed.

make debian.test

Supported systems (Table)

SystemVersionImage
Debian11bensuperpc/distcc:debian-11
Debian10bensuperpc/distcc:debian-10
Debian9bensuperpc/distcc:debian-9
Ubuntu22.04bensuperpc/distcc:ubuntu-22.04
Ubuntu20.04bensuperpc/distcc:ubuntu-20.04
Ubuntu18.04bensuperpc/distcc:ubuntu-18.04
Archlinuxbase-develbensuperpc/distcc:archlinux-base-devel
Alpine3.17bensuperpc/distcc:alpine-3.17
Alpine3.16bensuperpc/distcc:alpine-3.16
Alpine3.15Not supported
Fedora37bensuperpc/distcc:fedora-37
Fedora36bensuperpc/distcc:fedora-36
Fedora35bensuperpc/distcc:fedora-35
Manjarorollingbensuperpc/distcc:manjaro-latest
CentOS8Not supported

Contributing

If you want to contribute to this project, you can do it by opening a pull request or an issue.

Open source projects used

Sources

Licensing

MIT LICENSE

Tag summary

Content type

Image

Digest

sha256:6f16e8e74

Size

227.3 MB

Last updated

over 3 years ago

docker pull bensuperpc/distcc:fedora-37-20230305-d674fba