.. blogpost:: :title: Build xgboost 0.4a30 for Python 3.4 and 3.5 :keywords: install, xgboost, vcomp110.dll, OpenMP :date: 2016-04-04 :categories: install, module, windows :lid: blog_xgboost_install3504a30 `xgboost `_ does not support the Windows compilation anymore so I had to look for a way to compile *xgboost* for Windows. I tried to start from the source but it seemed quite complex plus the owners mention they don't support it anymore. Instead, I chose to use the source included the release package on `PyPi `_. I copy paste some of the instructions I used from the previous blog post I wrote on that topic since I did not start from a fresh and empty environment. The steps I did not do again are marked with a ``*``. This is the process I followed: * Install `Visual Studio Community Edition (C++) `_. The link points to an image *.iso*. ``*`` * Install the `Java JDK `_. Select the newest version. ``*`` * Download the modified version of `xgboost `_ from PyPI. * Check `OpenMD `_ files are present in ``C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC`` with files ``vcomp.lib``, ``vcombd.lib``, ``omp.h``. This is also what you should follow to get missing dependency such as ``vcomp110.dll`` (which comes from `OpenMP in Visual C++ `_). ``*`` * Open the solution in Windows directory (in xgboost) and update the path to point to Java JDK and OpenMP, build the version release/x64, update paths to point to your version of Java SDK ``*`` * Copy/Paste the built assemblies ``xgboost_wrapper.dll`` into the python folder * Go to the python folder and type ``python setup.py bdist_wheel`` to build the file *.whl*. This wheel can be installed on any Python 3.4 and 3.5 64 bits installation. It is available at `xgboost-0.4a30-py3-none-any.whl `_. The source I used to compile are located on `github `_ *About* * `OpenMP `_ is an API that supports multi-platform shared memory multiprocessing programming in C, C++, and Fortran (Wikipedia). * `XGBoost: A Scalable Tree Boosting System `_, paper by Tianqi Chen, Carlos Guestrin