I have managed to get the CMake to load up in Visual Studio 2017 and it tries to compile but some of the third party packages are breaking. For example the Yaml-cpp sub cmake is creating a library that has a slightly different name than expected and it breaks the build. About half of the 30 or so packages are breaking so there is some work to do.
Here is what I have so far as a procedure to build under Visual Studio 2017.
Install the prerequisites:
Visual Studio 2017 from Download Visual Studio Tools - Install Free for Windows, Mac, Linux (Community version is free)
This has the Visual C++ 14.0 compiler.CMake install from https://cmake.org/
GIT install from Git - Downloads
Includes patch.exe required when building external libraries using Visual Studio.
Make sure C:\Program Files\Git\usr\bin is added to your PATH environment variable
and restart your Command Prompt window if you have one open.Python Download and install Python 3.6.x (64bit version) from Python.org.
Be sure to click the checkbox to have it set the environment variables.
If you already have Python 2.7.x installed it is ok. This will place
the python path environment variable for Python 3.6 ahead of those for
Python 2.7 so that typing “python” will get Python 3.6.Opened a Command Prompt window and verified that it has the right python version. C:> python Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> Type ctl-Z CR to exit python.
pip This is installed with Python but you need to update it to make sure it is the latest.
C:> python -m pip install -U pipPython support modules
Start Command Prompt “as Administrator”
C:> pip install -U cython
C:> pip install -U setuptools
C:> pip install wheel
C:> pip install --user numpy
It should get the latest version of numpy (numpy-1.13.3-cp36-none-win_amd64.whl)Clone nupic.core repository
C:> cd \xxx (or where you want the repository to be)
C:\xxx> git clone GitHub - numenta/nupic.core-legacy: Implementation of core NuPIC algorithms in C++ (under construction)Use CMake to create the Visual Studio solution and project files
C:\xxx> cd nupic.core
C:\xxx\nupic.core> set NUPIC_CORE=%CD%
C:\xxx\nupic.core> mkdir build\scripts
C:\xxx\nupic.core> cd build\scriptsRun cmake to generate MSVC 2017 solution and project files
C:\xxx\nupic.core\build\scripts> cmake -G “Visual Studio 15 2017 Win64”
-DCMAKE_INSTALL_PREFIX=…\release
-DPY_EXTENSIONS_DIR=…..\bindings\py\src\nupic\bindings
…..Start up Visual Studio
C:\xxx\nupic.core\build\scripts> nupic_core_main.sln
Make sure to select the Release x64 configuration then build the ALL_BUILD project.
Once we get this running there are some install steps to get things in the right places. Then we have to create the bindings for Python, C#, and whatever else.