Skip to content

Compile Qt 64 bit with OpenSSL using MinGW

Christian edited this page Jan 25, 2017 · 28 revisions

This is how we compile Qt and OpenSSL from source. The only way to compile OpenSSL on Windows that I found is using MSYS2. MSYS2 has a nice package manager so we also use this to build Qt. Download latest 64 bit msys2 package from https://sourceforge.net/projects/msys2/files/Base/x86_64/ and install it to C:\msys64. Start MSYS2 from the start menu.

OpenSSL

First we update package database and install some packages that we will need:

pacman -Sy
pacman -S perl mingw-w64-x86_64-gcc make tar

Now that Mingw is installed, there should be a MSYS2 Mingw64 shortcut in your start menu. Start it. Download the opensSSSL sources from https://www.openssl.org/source/ (or install git and check out the lastest version). Next we will untar the sources, and build openSSL:

tar xvfz openSSL-sources.xxxx.tar.gz
cd openSSL-xxxx
mkdir dist
./Configure --prefix=$PWD/dist no-idea no-mdc2 no-rc5 shared mingw64
make depend && make && make install

OpenSSL is now compiled and installed in the previously created dist/ folder. We will now use this to compile Qt.

Qt

Get the sources of Qt from https://www.qt.io/download/ or check them out using git. Then create a new folder (maybe named "Qt5.x-release" and cd to it. We will create a shadow build in this folder. Next, configure Qt to build in this new folder:

/c/Qt/5.8/Src/configure.bat -release -opensource -opengl desktop -openssl -IC:/msys64/home/buildbot/openssl-1.1.0c/dist/include -LC:/msys64/home/buildbot/openssl-1.1.0c/dist/lib

Qt is now conficured with openSSL. Install mingw32-make and use it to compile Qt.

pacman -S mingw-w64-x86_64-make
mingw32-make

Note: If configure seems to do nothing try to delete the configure.cache first. The configure.log can give valuable insight into possible errors.