Docker image contains llvm toolchains including
- llvm core
- libcxx
- libcxxabi
- compiler-rt
- clang
- clang-extra
- lld
- lldb
in /opt/llvm.
- tag
latestcontains the latest stable llvm toolchain (currently llvm 8) under/opt/llvm/.
- tag
devcontains not only the llvm toolchain, but also the build tree for it in/opt/llvm/src/llvm/build-stage2.
To pull the image, use docker pull nobodyxu/llvm-toolchain:tag.
To build it on your only computer that is not x86_64 architecture, you need to run
echo -e "FROM debian:buster\nRUN mkdir -p /opt/llvm/src" | docker build -f - --tag=nobodyxu/llvm-toolchain:stage1
before running make (a technique to save compilation time by reusing previous build).
On x86_64 architecture, just run make.
During the build, the port 8000 and 8080 is being checked for accessibility. If these port is on, the build will assume the apt and git proxy respectively is up on your computer.
- To specify a different port, pass environment variable
APT_PROXY_PORTandGIT_PROXY_PORTrespectively when invokingmake. - To specify a different host, pass environment variable
APT_PROXY_HOSTandGIT_PROXY_HOSTrespectively when invokingmake. - To use no proxy, pass environment variable
NO_APT_PROXYandNO_GIT_PROXYrespectively when invokingmake.
This repository use NobodyXu/install-clang which is forked from rsmmr/install-clang.
Simply open a issue in the github repository NobodyXu/llvm-toolchain and I will respond to that as soon as possible.
Any pull request regarding bug fix or new feature is welcomed!