cbuildenv (sha256:26fe31e60e6f46b7ae0e8ecbb7e9d9431b4e7fc45bd10a6e2c4da82e4e20d0fa)
Published 2026-01-23 14:49:34 +01:00 by mike
Installation
docker pull forge.alveus.dev/docker-images/cbuildenv@sha256:26fe31e60e6f46b7ae0e8ecbb7e9d9431b4e7fc45bd10a6e2c4da82e4e20d0fasha256:26fe31e60e6f46b7ae0e8ecbb7e9d9431b4e7fc45bd10a6e2c4da82e4e20d0faImage layers
| # debian.sh --arch 'amd64' out/ 'bookworm' '@1766966400' |
| LABEL maintainer=Matt McCormick matt@mmmccormick.com |
| ARG DEBIAN_FRONTEND=noninteractive |
| RUN |1 DEBIAN_FRONTEND=noninteractive /bin/sh -c apt-get update --yes && apt-get install --no-install-recommends --yes autogen automake bash bc bison build-essential bzip2 ca-certificates ccache curl dirmngr file flex gettext gzip gnupg osslsigncode initramfs-tools libncurses5 libtool make nasm ncurses-dev pkg-config pax python3-dev python3-pip rsync sed ssh tar vim wget xz-utils zip zlib1g-dev python-is-python3 && apt-get clean autoclean --yes && apt-get autoremove --yes && rm -rf /var/lib/{apt,dpkg,cache,log}/ && rm /etc/ssh/*key* # buildkit |
| WORKDIR /usr/src |
| COPY imagefiles/install-gosu-binary.sh imagefiles/install-gosu-binary-wrapper.sh /buildscripts/ # buildkit |
| RUN |1 DEBIAN_FRONTEND=noninteractive /bin/sh -c set -x && /buildscripts/install-gosu-binary.sh && /buildscripts/install-gosu-binary-wrapper.sh && rm -rf /buildscripts # buildkit |
| COPY imagefiles/entrypoint.sh imagefiles/dockcross.sh /dockcross/ # buildkit |
| WORKDIR /usr/src |
| ARG GIT_VERSION=2.48.1 |
| ARG CMAKE_VERSION=3.31.5 |
| ARG NINJA_VERSION=1.12.1 |
| ARG FLATCC_VERSION=0.6.1 |
| ARG LIQUIDPROMT_VERSION=v1.12.0 |
| ARG OPENSSL_VERSION=openssl-1.1.1w |
| ARG OPENSSL_HASH=cf3098950cb4d853ad95c0841f1f9c6d3dc102dccfcacd521d93925208b76ac8 |
| ARG CURL_VERSION=curl-7.76.0 |
| ARG CURL_HASH=3b4378156ba09e224008e81dcce854b7ce4d182b1f9cfb97fe5ed9e9c18c6bd3 |
| ARG PERL_VERSION=perl-5.40.1 |
| ARG PERL_HASH=02f8c45bb379ed0c3de7514fad48c714fd46be8f0b536bfd5320050165a1ee26 |
| ENV RUSTUP_HOME=/opt/rustup |
| ENV CARGO_HOME=/opt/rustup/cargo |
| COPY imagefiles/build-and-install-cmake.sh imagefiles/build-and-install-curl.sh imagefiles/build-and-install-flatcc.sh imagefiles/build-and-install-git.sh imagefiles/build-and-install-ninja.sh imagefiles/build-and-install-openssl.sh imagefiles/build-and-install-openssh.sh imagefiles/build-and-install-rustup.sh imagefiles/install-cmake-binary.sh imagefiles/install-liquidprompt-binary.sh imagefiles/install-python-packages.sh imagefiles/utils.sh /buildscripts/ # buildkit |
| RUN |12 DEBIAN_FRONTEND=noninteractive GIT_VERSION=2.48.1 CMAKE_VERSION=3.31.5 NINJA_VERSION=1.12.1 FLATCC_VERSION=0.6.1 LIQUIDPROMT_VERSION=v1.12.0 OPENSSL_VERSION=openssl-1.1.1w OPENSSL_HASH=cf3098950cb4d853ad95c0841f1f9c6d3dc102dccfcacd521d93925208b76ac8 CURL_VERSION=curl-7.76.0 CURL_HASH=3b4378156ba09e224008e81dcce854b7ce4d182b1f9cfb97fe5ed9e9c18c6bd3 PERL_VERSION=perl-5.40.1 PERL_HASH=02f8c45bb379ed0c3de7514fad48c714fd46be8f0b536bfd5320050165a1ee26 /bin/sh -c X86_FLAG=$([ "$DEFAULT_DOCKCROSS_IMAGE" = "dockcross/manylinux2014-x86" ] && echo "-32" || echo "") && /buildscripts/build-and-install-openssl.sh $X86_FLAG && /buildscripts/build-and-install-openssh.sh && /buildscripts/build-and-install-curl.sh && /buildscripts/build-and-install-git.sh && /buildscripts/build-and-install-cmake.sh $X86_FLAG && /buildscripts/build-and-install-rustup.sh && /buildscripts/install-liquidprompt-binary.sh && PYTHON=$([ -e /opt/python/cp311-cp311/bin/python ] && echo "/opt/python/cp311-cp311/bin/python" || echo "python3") && /buildscripts/install-python-packages.sh -python ${PYTHON} && /buildscripts/build-and-install-ninja.sh -python ${PYTHON} && /buildscripts/build-and-install-flatcc.sh && rm -rf /buildscripts # buildkit |
| ENV PATH=/opt/rustup/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| RUN |12 DEBIAN_FRONTEND=noninteractive GIT_VERSION=2.48.1 CMAKE_VERSION=3.31.5 NINJA_VERSION=1.12.1 FLATCC_VERSION=0.6.1 LIQUIDPROMT_VERSION=v1.12.0 OPENSSL_VERSION=openssl-1.1.1w OPENSSL_HASH=cf3098950cb4d853ad95c0841f1f9c6d3dc102dccfcacd521d93925208b76ac8 CURL_VERSION=curl-7.76.0 CURL_HASH=3b4378156ba09e224008e81dcce854b7ce4d182b1f9cfb97fe5ed9e9c18c6bd3 PERL_VERSION=perl-5.40.1 PERL_HASH=02f8c45bb379ed0c3de7514fad48c714fd46be8f0b536bfd5320050165a1ee26 /bin/sh -c echo "root:root" | chpasswd # buildkit |
| WORKDIR /work |
| ENTRYPOINT ["/dockcross/entrypoint.sh"] |
| COPY imagefiles/cmake.sh /usr/local/bin/cmake # buildkit |
| COPY imagefiles/ccmake.sh /usr/local/bin/ccmake # buildkit |
| ARG IMAGE=dockcross/base |
| ARG VCS_URL=https://github.com/dockcross/dockcross |
| LABEL org.label-schema.name=dockcross/base org.label-schema.vcs-url=https://github.com/dockcross/dockcross org.label-schema.schema-version=1.0 |
| LABEL maintainer=Matt McCormick matt@mmmccormick.com |
| ENV WINEARCH=win64 |
| ARG MXE_TARGET_ARCH=x86_64 |
| ARG MXE_TARGET_THREAD= |
| ARG MXE_TARGET_LINK=static |
| ARG MXE_GIT_TAG=9f349e0de62a4a68bfc0f13d835a6c685dae9daa |
| ENV CMAKE_TOOLCHAIN_FILE=/usr/src/mxe/usr/x86_64-w64-mingw32.static/share/cmake/mxe-conf.cmake |
| ARG DEBIAN_FRONTEND=noninteractive |
| RUN |5 MXE_TARGET_ARCH=x86_64 MXE_TARGET_THREAD= MXE_TARGET_LINK=static MXE_GIT_TAG=9f349e0de62a4a68bfc0f13d835a6c685dae9daa DEBIAN_FRONTEND=noninteractive /bin/sh -c apt-get update && apt-get install --no-install-recommends --yes autoconf automake autopoint bash bison bzip2 flex gettext git g++ g++-multilib gperf intltool libffi-dev libgdk-pixbuf2.0-dev libtool-bin libltdl-dev libssl-dev libxml-parser-perl libc6-dev-i386 lzip make nsis openssl osslsigncode p7zip-full patch perl pkg-config python3 ruby scons sed unzip wget wine xz-utils python3-mako && dpkg --add-architecture i386 && apt-get update && apt-get install -y wine32 && wine hostname && cd /usr/src && git clone https://github.com/mxe/mxe.git && cd mxe && git checkout ${MXE_GIT_TAG} && cd /usr/src/mxe && echo "MXE_TARGETS := ${MXE_TARGET_ARCH}-w64-mingw32.${MXE_TARGET_LINK}${MXE_TARGET_THREAD}" > settings.mk && echo "MXE_USE_CCACHE :=" >> settings.mk && echo "MXE_PLUGIN_DIRS := plugins/gcc11" >> settings.mk && echo "LOCAL_PKG_LIST := cc cmake" >> settings.mk && echo ".DEFAULT local-pkg-list:" >> settings.mk && echo "local-pkg-list: \$(LOCAL_PKG_LIST)" >> settings.mk && cd /usr/src/mxe && make JOBS=$(nproc) && rm -rf log pkg && echo 'set(CMAKE_CROSSCOMPILING_EMULATOR "/usr/bin/wine")' >> ${CMAKE_TOOLCHAIN_FILE} && ln -s /usr/bin/makensis /usr/bin/${MXE_TARGET_ARCH}-w64-mingw32.${MXE_TARGET_LINK}${MXE_TARGET_THREAD}-makensis && cd /usr/bin && rm cmake cpack && ln -s /usr/src/mxe/usr/bin/${MXE_TARGET_ARCH}-w64-mingw32.${MXE_TARGET_LINK}${MXE_TARGET_THREAD}-cmake cmake && ln -s /usr/src/mxe/usr/bin/${MXE_TARGET_ARCH}-w64-mingw32.${MXE_TARGET_LINK}${MXE_TARGET_THREAD}-cpack cpack && rm -rf /tmp/wine-* # buildkit |
| ENV CROSS_ROOT=/usr/src/mxe/usr |
| ENV PATH=/opt/rustup/cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/src/mxe/usr/bin |
| ENV CROSS_TRIPLE=x86_64-w64-mingw32.static |
| ENV AS=/usr/src/mxe/usr/bin/x86_64-w64-mingw32.static-as AR=/usr/src/mxe/usr/bin/x86_64-w64-mingw32.static-ar CC=/usr/src/mxe/usr/bin/x86_64-w64-mingw32.static-gcc CPP=/usr/src/mxe/usr/bin/x86_64-w64-mingw32.static-cpp CXX=/usr/src/mxe/usr/bin/x86_64-w64-mingw32.static-g++ LD=/usr/src/mxe/usr/bin/x86_64-w64-mingw32.static-ld FC=/usr/src/mxe/usr/bin/x86_64-w64-mingw32.static-gfortran |
| WORKDIR /work |
| ARG BUILD_DATE=2026-01-05T20:42:11Z |
| ARG IMAGE=dockcross/windows-static-x64 |
| ARG VERSION=20260105-1d3b812 |
| ARG VCS_REF=1d3b812 |
| ARG VCS_URL=https://github.com/dockcross/dockcross |
| LABEL org.label-schema.build-date=2026-01-05T20:42:11Z org.label-schema.name=dockcross/windows-static-x64 org.label-schema.version=20260105-1d3b812 org.label-schema.vcs-ref=1d3b812 org.label-schema.vcs-url=https://github.com/dockcross/dockcross org.label-schema.schema-version=1.0 |
| ENV DEFAULT_DOCKCROSS_IMAGE=dockcross/windows-static-x64:20260105-1d3b812 |
| ENV DEBIAN_FRONTEND=noninteractive |
| USER root |
| RUN /bin/sh -c apt-get update && apt-get install -y wget curl git cmake autoconf automake libtool pkg-config zip unzip python3 python3-pip python3-venv ca-certificates file mingw-w64 g++-mingw-w64-x86-64 gcc-mingw-w64-x86-64 sudo jq rsync tar gzip clang lld llvm && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c python3 -m pip install --upgrade pip --break-system-packages # buildkit |
| RUN /bin/sh -c pip3 install conan --break-system-packages # buildkit |
| RUN /bin/sh -c cmake --version && conan --version && x86_64-w64-mingw32-gcc --version && x86_64-w64-mingw32-g++ --version && clang --version # buildkit |
| RUN /bin/sh -c cd /tmp && echo '#include <iostream>' > test_win.cpp && echo 'int main() { std::cout << "Hello from Windows C++!" << std::endl; return 0; }' >> test_win.cpp && x86_64-w64-mingw32-g++ test_win.cpp -o test_win.exe -static -static-libgcc -static-libstdc++ && file test_win.exe | grep "PE32+" && rm -rf test_win.cpp test_win.exe && echo "C++ Windows cross-compilation toolchain tests passed!" # buildkit |
| RUN /bin/sh -c useradd -m -s /bin/bash runner && echo "runner ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers && chown -R runner:runner /home/runner # buildkit |
| USER root |
| RUN /bin/sh -c git config --system --add safe.directory '*' # buildkit |
| WORKDIR /work |
| CMD ["/bin/bash"] |
Labels
| Key | Value |
|---|---|
| maintainer | Matt McCormick matt@mmmccormick.com |
| org.label-schema.build-date | 2026-01-05T20:42:11Z |
| org.label-schema.name | dockcross/windows-static-x64 |
| org.label-schema.schema-version | 1.0 |
| org.label-schema.vcs-ref | 1d3b812 |
| org.label-schema.vcs-url | https://github.com/dockcross/dockcross |
| org.label-schema.version | 20260105-1d3b812 |
Details
2026-01-23 14:49:34 +01:00
Versions (7)
View all
Container
0
OCI / Docker
linux/amd64
2.5 GiB
0.0.7-crosswin
2026-01-23
latest-crosswin
2026-01-23
latest-linux
2026-01-23
0.0.7-linux
2026-01-23
0.0.6-windows
2026-01-23