I tried today to compile the current version of nupic.core under windows with VS2015, CMake3.6.0 and got many errors.
After looking at some of errors I found out the most of problems by compiling all third party SWs, e,g. YamlStaticLib.
For each the third party SW, the following cmake-file is somehows generated automatically in the directory
..\ThirdParty\Stamp\YamlStaticLib\verify-YamlStaticLib.cmake
This file have any rows, that look like:
if("" STREQUAL "")
message(WARNING "File will not be verified since no URL_HASH specified")
return()
endif()
and at this code, the compiling has broken, because âthe empty string is equal the empty stringâ too!
After commenting some rows below in this file:
#if("" STREQUAL "")
# message(WARNING "File will not be verified since no URL_HASH specified")
# return()
#endif()
#if("" STREQUAL "")
# message(FATAL_ERROR "EXPECT_VALUE can't be empty")
#endif()
#file("" "C:/Projects/MachineIntelligence/nupic.core-master/external/common/share/yaml/yaml-0.1.5.tar.gz" actual_value)
#if(NOT "${actual_value}" STREQUAL "")
# message(FATAL_ERROR "error: hash of
# C:/Projects/MachineIntelligence/nupic.core-master/external/common/share/yaml/yaml-0.1.5.tar.gz
#does not match expected value
# expected: ''
# actual: '${actual_value}'
#")
#endif()
the compiler do somethings until the next error like:
Performing configure step for 'YamlStaticLib'
-- The C compiler identification is MSVC 19.0.24210.0
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe -- broken
CMake Error at C:/Program Files/CMake/share/cmake-3.6/Modules/CMakeTestCCompiler.cmake:61 (message):
The C compiler "C:/Program Files (x86)/Microsoft Visual Studio
14.0/VC/bin/x86_amd64/cl.exe" is not able to compile a simple test program.
Here it trys to test the compiler by compiling a âtestCCompiler.câ, but this file dies NOT exist.
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64\CL.exe /c /Zi /nologo /W1 /WX- /Od /Ob0 /Oy- /D PSAPI_VERSION=1 /D WIN32 /D _WINDOWS /D _MBCS /D _CRT_SECURE_NO_WARNINGS /D NDEBUG /D _VARIADIC_MAX=10 /D NOMINMAX /D _DEBUG /D âCMAKE_INTDIR="Debug"â /D _MBCS /Gm- /EHs /RTC1 /MDd /GS /fp:precise /Zc:wchar_t /Zc:forScope /Zc:inline /GR /Fo"cmTC_3c272.dir\Debug\" /Fd"cmTC_3c272.dir\Debug\vc140.pdb" /Gd /TP /analyze- /errorReport:prompt âC:\Projects\MachineIntelligence\nupic.core-master\VS2015\ThirdParty\Build\YamlStaticLib\CMakeFiles\CMakeTmp\testCCompiler.câ
As summary, I think it is a bug in a script that generates a cmake-file for building the third party SW.
I have only basic knowledge about CMake, so that I can not solve this problem properly.
But CMake-Expert can take a time for debugging it well.
Best thanks, Binh