@@ -9,7 +9,7 @@ You can find a number of sources to build docker images with LLVM components in
9
9
images for their own use, or as a starting point for someone who wants to write
10
10
their own Dockerfiles.
11
11
12
- We currently provide Dockerfiles with ``debian10 `` and ``nvidia-cuda `` base images.
12
+ We currently provide Dockerfiles with ``debian12 `` and ``nvidia-cuda `` base images.
13
13
We also provide an ``example `` image, which contains placeholders that one would need
14
14
to fill out in order to produce Dockerfiles for a new docker image.
15
15
@@ -72,13 +72,13 @@ checkout from git and provide a list of CMake arguments to use during when
72
72
building LLVM inside docker container.
73
73
74
74
Here's a very simple example of getting a docker image with clang binary,
75
- compiled by the system compiler in the debian10 image:
75
+ compiled by the system compiler in the debian12 image:
76
76
77
77
.. code-block :: bash
78
78
79
79
./llvm/utils/docker/build_docker_image.sh \
80
- --source debian10 \
81
- --docker-repository clang-debian10 --docker-tag " staging" \
80
+ --source debian12 \
81
+ --docker-repository clang-debian12 --docker-tag " staging" \
82
82
-p clang -i install-clang -i install-clang-resource-headers \
83
83
-- \
84
84
-DCMAKE_BUILD_TYPE=Release
@@ -93,51 +93,45 @@ this command will do that:
93
93
# LLVM_TARGETS_TO_BUILD=Native is to reduce stage1 compile time.
94
94
# Options, starting with BOOTSTRAP_* are passed to stage2 cmake invocation.
95
95
./build_docker_image.sh \
96
- --source debian10 \
97
- --docker-repository clang-debian10 --docker-tag " staging" \
96
+ --source debian12 \
97
+ --docker-repository clang-debian12 --docker-tag " staging" \
98
98
-p clang -i stage2-install-clang -i stage2-install-clang-resource-headers \
99
99
-- \
100
100
-DLLVM_TARGETS_TO_BUILD=Native -DCMAKE_BUILD_TYPE=Release \
101
101
-DBOOTSTRAP_CMAKE_BUILD_TYPE=Release \
102
102
-DCLANG_ENABLE_BOOTSTRAP=ON -DCLANG_BOOTSTRAP_TARGETS=" install-clang;install-clang-resource-headers"
103
103
104
- This will produce a new image ``clang-debian10 :staging `` from the latest
104
+ This will produce a new image ``clang-debian12 :staging `` from the latest
105
105
upstream revision.
106
106
After the image is built you can run bash inside a container based on your image
107
107
like this:
108
108
109
109
.. code-block :: bash
110
110
111
- docker run -ti clang-debian10 :staging bash
111
+ docker run -ti clang-debian12 :staging bash
112
112
113
113
Now you can run bash commands as you normally would:
114
114
115
115
.. code-block :: bash
116
116
117
117
root@80f351b51825:/# clang -v
118
- clang version 5.0.0 (trunk 305064)
118
+ clang version 19.1.7 (trunk 524462)
119
+ Target: x86_64-unknown-linux-gnu
119
120
Target: x86_64-unknown-linux-gnu
120
121
Thread model: posix
121
122
InstalledDir: /bin
122
- Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8
123
- Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.8.4
124
- Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
125
- Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2
126
- Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
127
- Candidate multilib: . ; @m64
128
- Selected multilib: . ; @m64
129
123
130
124
131
125
Which image should I choose?
132
126
============================
133
- We currently provide two images: Debian10 -based and nvidia-cuda-based. They
127
+ We currently provide two images: Debian12 -based and nvidia-cuda-based. They
134
128
differ in the base image that they use, i.e. they have a different set of
135
129
preinstalled binaries. Debian8 is very minimal, nvidia-cuda is larger, but has
136
130
preinstalled CUDA libraries and allows to access a GPU, installed on your
137
131
machine.
138
132
139
133
If you need a minimal linux distribution with only clang and libstdc++ included,
140
- you should try Debian10 -based image.
134
+ you should try Debian12 -based image.
141
135
142
136
If you want to use CUDA libraries and have access to a GPU on your machine,
143
137
you should choose nvidia-cuda-based image and use `nvidia-docker
@@ -150,20 +144,20 @@ If you have a different use-case, you could create your own image based on
150
144
``example/ `` folder.
151
145
152
146
Any docker image can be built and run using only the docker binary, i.e. you can
153
- run debian10 build on Fedora or any other Linux distribution. You don't need to
147
+ run debian12 build on Fedora or any other Linux distribution. You don't need to
154
148
install CMake, compilers or any other clang dependencies. It is all handled
155
149
during the build process inside Docker's isolated environment.
156
150
157
151
Stable build
158
152
============
159
153
If you want a somewhat recent and somewhat stable build, use the
160
154
``branches/google/stable `` branch, i.e. the following command will produce a
161
- Debian10 -based image using the latest ``google/stable `` sources for you:
155
+ Debian12 -based image using the latest ``google/stable `` sources for you:
162
156
163
157
.. code-block :: bash
164
158
165
159
./llvm/utils/docker/build_docker_image.sh \
166
- -s debian10 --d clang-debian10 -t " staging" \
160
+ -s debian12 --d clang-debian12 -t " staging" \
167
161
--branch branches/google/stable \
168
162
-p clang -i install-clang -i install-clang-resource-headers \
169
163
-- \
0 commit comments