Wednesday, October 14, 2015

Monday, October 12, 2015

Boost and ICU build scripts for MinGW-w64

My MinGW distro is long gone now. However I still privately use a MinGW-w64 toolchain to test and study C++.

I have kept two scripts to build both ICU and Boost so I can have Boost libraries always available.

The scripts are for the latest version of both libraries. Build first ICU, uncompress the generated package and then build Boost.

You will need:

Steps:

  • Create a directory, eg, C:\mingw-build;
  • Under this directory create other three directories: dest, scripts and sources;
  • Copy both icu-55.1-w64-amd64.sh and boost-1.59.0-w64-amd64.sh to the scripts directory;
  • Download icu4c-55_1-src.tgz and icu4c-55_1-data.zip from ICU site to the sources directory;
  • Download boost_1_59_0.tar.bz2 from Boost site to the sources directory;
  • Download the MinGW-w64 toolschain and uncompress it to C:\MinGW64
  • Configure your system and add C:\MinGW64\bin to the PATH
  • Download the tools (bsdtar, diff, patch, gnufind, bzip2 and xz) to C:\MinGW64\bin (or any other directory in the PATH);
  • Open Bash;
  • Go to the scripts directory: cd /c/mingw-build/scripts
  • Execute the ICU build script: ./icu-55.1-w64-amd64.sh
  • If the build is successful the icuc-55.1-w64-amd64.tar.xz file is created in the C:\mingw-build\dest directory;
  • Go to the MinGW64\bin directory: cd /c/MinGW64
  • Uncompress the ICU package: bsdtar xzf /c/mingw-build/dest/icuc-55.1-w64-amd64.tar.xz
  • Go back to the scripts directory: cd /c/mingw-build/scripts
  • Execute the Boost build script: ./boost-1.59.0-w64-amd64.sh
  • If the build is successful the boost-1.59.0-w64-amd64.tar.xz file is created in the C:\mingw-build\dest directory;
  • Go to the MinGW64\bin directory: cd /c/MinGW64
  • Uncompress the Boost package: bsdtar xzf /c/mingw-build/dest/boost-1.59.0-w64-amd64.tar.xz
  • Now you have a MinGW-w64 installation with the Boost libraries

Please send your feedback: comments, suggestions and bug reports!!

DISCLAIMER: the scripts are provided "as is" without warranty of any kind.