Docker image with MXE tools required to build altcoins (boost1.58, qt5, db5.3, miniupnpc-1.6, libqrencode-4.0.2, openssl-1.0)
Tools:
- boost-dev v1.58
- qt5
- BerkeleyDB v5.3
- openssl v1.0
- miniupnpc v1.6
- libqrencode v4.0.2
Env variables:
- MXE_PATH
- MXE_INCLUDE_PATH
- MXE_LIB_PATH
Build it yourself:
$ docker build --tag altcoin-mxe --target build-mxe .
Or pull already built image from DockerHub:
$ docker pull sskender/altcoin-mxe:latest
Run container:
$ docker run -it sskender/altcoin-mxe:latest bash
Clone your shitcoin and build it:
$ git clone https://github.com/shitdev/shitcoin
$ cd shitcoin
$ i686-w64-mingw32.static-qmake-qt5 \
RELEASE=1 \
USE_UPNP=1 \
USE_QRCODE=1 \
USE_DBUS=1 \
BOOST_LIB_SUFFIX=-mt \
BOOST_THREAD_LIB_SUFFIX=_win32-mt \
BOOST_INCLUDE_PATH=$MXE_INCLUDE_PATH/boost \
BOOST_LIB_PATH=$MXE_LIB_PATH \
OPENSSL_INCLUDE_PATH=$MXE_INCLUDE_PATH/openssl \
OPENSSL_LIB_PATH=$MXE_LIB_PATH \
BDB_INCLUDE_PATH=$MXE_INCLUDE_PATH \
BDB_LIB_PATH=$MXE_LIB_PATH \
MINIUPNPC_INCLUDE_PATH=$MXE_INCLUDE_PATH \
MINIUPNPC_LIB_PATH=$MXE_LIB_PATH \
QRENCODE_INCLUDE_PATH=$MXE_INCLUDE_PATH/qrencode \
QRENCODE_LIB_PATH=$MXE_LIB_PATH \
QMAKE_LRELEASE=/build/mxe/usr/i686-w64-mingw32.static/qt/bin/lrelease shitcoin-qt.pro
$ make -f Makefile.Release
Build or pull image:
$ docker build --tag altcoin-mxe:headless --target build-headless .
$ # OR
$ docker pull sskender/altcoin-mxe:headless
Run container:
$ docker run -it sskender/altcoin-mxe:headless bash
Clone your shitcoin and build it:
$ git clone https://github.com/shitdev/shitcoin
$ cd shitcoin/src
$ make -f makefile.unix
FROM sskender/altcoin-mxe:latest as mybuild
WORKDIR /build/shitcoin
COPY . .
RUN i686-w64-mingw32.static-qmake-qt5 ...
This will probably work. If not, have fun tweaking boost, miniupnpc, openssl versions, maybe use qt4 instead of qt5 for older altcoins or any other dependency.
Probably.