diff --git a/README.md b/README.md index f9e9de8..436de87 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,7 @@ Some C++ idioms that were difficult to project were omitted from the binding. Bu ### Q7. How can I compile for Windows from a Linux host OS? 1. Build the necessary docker container for cross-compilation: - - `docker build -t miqt/win64-cross:latest -f win64-cross-qt-mxe-static.Dockerfile .` + - `docker build -t miqt/win64-cross:latest -f win64-cross-go1.23-qt5.15-static.Dockerfile .` 2. Build your application: - `docker run --rm -v $(pwd):/src -w /src miqt/win64-cross:latest go build -buildvcs=false -ldflags '-s -w -H windowsgui'` diff --git a/docker/win64-cross-qt-mxe-dynamic.Dockerfile b/docker/win64-cross-go1.19-qt5.15-dynamic.Dockerfile similarity index 100% rename from docker/win64-cross-qt-mxe-dynamic.Dockerfile rename to docker/win64-cross-go1.19-qt5.15-dynamic.Dockerfile diff --git a/docker/win64-cross-qt-mxe-static.Dockerfile b/docker/win64-cross-go1.19-qt5.15-static.Dockerfile similarity index 100% rename from docker/win64-cross-qt-mxe-static.Dockerfile rename to docker/win64-cross-go1.19-qt5.15-static.Dockerfile diff --git a/docker/win64-cross-go1.23-qt5.15-dynamic.Dockerfile b/docker/win64-cross-go1.23-qt5.15-dynamic.Dockerfile new file mode 100644 index 0000000..2d9c1f7 --- /dev/null +++ b/docker/win64-cross-go1.23-qt5.15-dynamic.Dockerfile @@ -0,0 +1,19 @@ +FROM golang:1.23-bookworm + +RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ + apt-get install -qyy gnupg2 ca-certificates + +RUN DEBIAN_FRONTEND=noninteractive \ + echo "deb https://pkg.mxe.cc/repos/apt buster main" >/etc/apt/sources.list.d/mxeapt.list && \ + apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 86B72ED9 && \ + apt-get update && \ + apt-get install -qyy mxe-x86-64-w64-mingw32.shared-qt5 && \ + apt-get clean + +ENV PATH=/usr/lib/mxe/usr/bin:$PATH + +ENV CXX=x86_64-w64-mingw32.shared-g++ +ENV CC=x86_64-w64-mingw32.shared-gcc +ENV PKG_CONFIG=x86_64-w64-mingw32.shared-pkg-config +ENV GOOS=windows +ENV CGO_ENABLED=1 diff --git a/docker/win64-cross-go1.23-qt5.15-static.Dockerfile b/docker/win64-cross-go1.23-qt5.15-static.Dockerfile new file mode 100644 index 0000000..f1f20aa --- /dev/null +++ b/docker/win64-cross-go1.23-qt5.15-static.Dockerfile @@ -0,0 +1,19 @@ +FROM golang:1.23-bookworm + +RUN DEBIAN_FRONTEND=noninteractive apt-get update && \ + apt-get install -qyy gnupg2 ca-certificates + +RUN DEBIAN_FRONTEND=noninteractive \ + echo "deb https://pkg.mxe.cc/repos/apt buster main" >/etc/apt/sources.list.d/mxeapt.list && \ + apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 86B72ED9 && \ + apt-get update && \ + apt-get install -qyy mxe-x86-64-w64-mingw32.static-qt5 && \ + apt-get clean + +ENV PATH=/usr/lib/mxe/usr/bin:$PATH + +ENV CXX=x86_64-w64-mingw32.static-g++ +ENV CC=x86_64-w64-mingw32.static-gcc +ENV PKG_CONFIG=x86_64-w64-mingw32.static-pkg-config +ENV GOOS=windows +ENV CGO_ENABLED=1