MXE (M cross environment) is a Makefile that compiles a cross compiler and cross compiles many free libraries such as SDL and Qt. Thus, it provides a nice cross compiling environment for various target platforms. Visit MXE site to learn more about MXE.

This project aims to provide binary packages built from MXE packages. Packages can be downloaded as tar.xz files or installed as Debian packages from our APT.

Currently we provide pre-compiled packages only for amd64 host. All 4 MXE targets are available.

tar.xz packages

tar.xz packages can be downloaded from the following location:

Old releases:

Debian packages

To install Debian packages, add the location of our APT to your /etc/apt/sources:

# echo "deb wheezy main" > \

Then add our GPG key to APT:

# apt-key adv --keyserver --recv-keys D43A795B73B16ABE9643FE1AFD8FFF16DB45C6AB

Update APT cache:

# apt-get update

Install some MXE package:

# apt-get install mxe-i686-w64-mingw32.static-qt

Names of packages are mxe-<target>-<package>.

Possible targets:

List of packages can be found on MXE site and in the build matrix.

Packages are installed to /usr/lib/mxe/<target>/. You can use this location as MXE source tree.

For example, cross-compile CMake project:

$ target=i686-w64-mingw32.static
$ mxedir=/usr/lib/mxe/
$ $mxedir/usr/bin/$target-cmake project-source
$ make

Use in Travis Continuous Integration

Apply the steps above in your .travis.yml. Deploying build artefacts from Travis to Github releases is also a good idea. You can use as an example.

How to build binary packages from MXE packages