Hi Jacob, I can confirm that build passed on VS2017 using generator "Visual Studio 15 2017 Win64".
Thanks, Daniel -----Original Message----- From: Jacob Barrett [mailto:jbarr...@pivotal.io] Sent: Thursday, July 13, 2017 4:20 PM To: dev@geode.apache.org Subject: Re: Geode-Native Windows build Yup! It should match the the minimum requirements mentioned at the very least. It should also compile fine under 2017 though I don't believe anyone has yet. Sent from my iPhone > On Jul 13, 2017, at 6:08 AM, Daniel Farcovich <daniel.farcov...@amdocs.com> > wrote: > > From BUILDING.md: > > Windows Generator > > The recommended generator on Windows is Visual Studio 12 2013 Win64: > > $ cmake -G "Visual Studio 12 2013 Win64" ../src > > > Should we change that? > > Daniel > > -----Original Message----- > From: Jacob Barrett [mailto:jbarr...@pivotal.io] > Sent: Thursday, July 13, 2017 3:06 PM > To: dev@geode.apache.org > Subject: Re: Geode-Native Windows build > > VS 2013 is not fully C++11 compliant. The minimum compiler on windows is VS > 2015. > > Sent from my iPhone > >> On Jul 13, 2017, at 4:32 AM, Daniel Farcovich <daniel.farcov...@amdocs.com> >> wrote: >> >> As I mentioned in the first email I receive compilation errors, for example: >> 31>C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(57): >> error C2144: syntax error : 'bool' should be preceded by ';' >> (C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\src\FunctionServiceImpl. >> >> The root cause of this error is in the use of "constexpr" in utils.hpp and >> build in VS2013. >> There are features of c++11 which are not implemented in various VS versions. >> Here is a table with the unsupported features, where constexpr is one of >> them: >> https://msdn.microsoft.com/en-us/library/hh567368.aspx#featurelist >> >> I assume the rest of the errors are of the same reason. >> >> Although boost has already macros to workaround constexpr (BOOST_CONSTEXPR), >> my suggestion is to add a macro to geode_base.hpp for removing constexpr >> when it's not supported: >> #ifdef _WIN32 >> #if _MSC_VER > 1800 //VS2015 and higher #define GF_CONSTEXPR >> constexpr #else #define GF_CONSTEXPR #endif #else #define >> GF_CONSTEXPR constexpr #endif >> >> Daniel >> >> -----Original Message----- >> From: Daniel Farcovich >> Sent: Thursday, July 13, 2017 10:07 AM >> To: 'dev@geode.apache.org' <dev@geode.apache.org> >> Subject: RE: Geode-Native Windows build >> >> Hi Jake and Ernest, >> >> I tried to build from c:\build >> Here is the config command and output: >> >> c:\build>cmake -DCMAKE_INSTALL_PREFIX=C:\build\out -G "Visual Studio >> 12 2013 Win64" -Thost=x64 >> C:\Users\Fdaniel\Source\Repos\geode-native2\src >> -- The C compiler identification is MSVC 18.0.21005.1 >> -- The CXX compiler identification is MSVC 18.0.21005.1 >> -- Check for working C compiler: C:/Program Files (x86)/Microsoft >> Visual Studio 12.0/VC/bin/amd64/cl.exe >> -- Check for working C compiler: C:/Program Files (x86)/Microsoft >> Visual Studio 12.0/VC/bin/amd64/cl.exe -- works >> -- Detecting C compiler ABI info >> -- Detecting C compiler ABI info - done >> -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft >> Visual Studio 12.0/VC/bin/amd64/cl.exe >> -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft >> Visual Studio 12.0/VC/bin/amd64/cl.exe -- works >> -- Detecting CXX compiler ABI info >> -- Detecting CXX compiler ABI info - done >> -- Detecting CXX compile features >> -- Detecting CXX compile features - done >> -- Performing Test CFLAGS_M64_ALLOWED >> -- Performing Test CFLAGS_M64_ALLOWED - Failed >> -- Performing Test CXXFLAGS_M64_ALLOWED >> -- Performing Test CXXFLAGS_M64_ALLOWED - Failed >> -- Performing Test CFLAGS_mt_ALLOWED >> -- Performing Test CFLAGS_mt_ALLOWED - Failed >> -- Found Java: C:/Program Files/Java/jdk1.8.0_74/bin/java.exe (found >> suitable version "1.8.0.74", minimum required is "1.8.0.60") found >> components: Development >> -- Found Geode: >> C:\Users\Fdaniel\Source\Repos\geode\geode-assembly\build\install\apac >> h e-geode\bin\gfsh.bat (found suitable version "1.1.1", minimum >> required is "1.0") >> -- Found Doxygen: C:/Program Files/doxygen/bin/doxygen.exe (found >> suitable version "1.8.13", minimum required is "1.6") >> -- Found Git: C:/Program Files/Git/cmd/git.exe (found suitable >> version "2.10.2.windows.1", minimum required is "1.7") >> -- Looking for include files sys/param.h, sys/mount.h >> -- Looking for include files sys/param.h, sys/mount.h - not found >> -- Looking for SIGSTKFLT >> -- Looking for SIGSTKFLT - not found >> -- Looking for SIGPWR >> -- Looking for SIGPWR - not found >> -- Found Geode: >> C:\Users\Fdaniel\Source\Repos\geode\geode-assembly\build\install\apac >> h e-geode\bin\gfsh.bat (found version "1.1.1") >> -- Found Java: C:/Program Files/Java/jdk1.8.0_74/bin/java.exe (found >> version "1.8.0.74") >> -- Found Doxygen: C:/Program Files/doxygen/bin/doxygen.exe (found >> version "1.8.13") >> -- Configuring done >> -- Generating done >> >> -- Build files have been written to: C:/build >> >> >> PFA CMakeError.log and CMakeOutput.log after "cmake --build . -- /m" >> >> Thanks, >> Daniel >> >> -----Original Message----- >> From: Jacob Barrett [mailto:jbarr...@pivotal.io] >> Sent: Wednesday, July 12, 2017 5:11 PM >> To: dev@geode.apache.org >> Subject: Re: Geode-Native Windows build >> >> While we wait for your config output there is something else that might bite >> you if it isn't what is biting you now. Some of the third part libraries >> built as part of Geode native have deep directory structures. Your deep >> directory structure to your sources combine with that may result in paths >> over the windows limit. >> >> Consider using something more shallow on windows, like C:\build. Your source >> can be anywhere since CMake builds are outside the source tree. >> >> -Jake >> >> >> Sent from my iPhone >> >>> On Jul 12, 2017, at 6:52 AM, Daniel Farcovich <daniel.farcov...@amdocs.com> >>> wrote: >>> >>> Hi, >>> I'm failing to build geode native cpp client on windows, although >>> followed the instructions on BUILDING.md Looks like there are >>> slash/backslash fixes should be done in the paths in cmake files. >>> After overcoming cmake failures the build fails on stage "cmake --build . >>> -- /m" with compilation errors for example: >>> >>> 31>C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(57): >>> error C2144: syntax error : 'bool' should be preceded by ';' >>> (C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\src\FunctionServiceImpl. >>> cpp) >>> [C:\Users\Fdaniel\Source\Repos\geode-native2\build\cppcache\src\apache-geode-static.vcxproj] >>> >>> 4>C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(57): >>> error C2144: syntax error : 'bool' should be preceded by ';' >>> (C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\src\FunctionServiceImpl. >>> cpp) >>> [C:\Users\Fdaniel\Source\Repos\geode-native2\build\cppcache\src\apac >>> he-geode.vcxproj] >>> 31>ClCompile: >>> >>> C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(61) >>> : see reference to class template instantiation >>> 'apache::geode::client::dereference_equal_to<std::shared_ptr<_Ty>>' being >>> compiled >>> 4>ClCompile: >>> >>> C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geo >>> de/utils.hpp(61) : see reference to class template instantiation >>> 'apache::geode::client::dereference_equal_to<std::shared_ptr<_Ty>>' >>> being compiled >>> >>> 31>C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(57): >>> error C4430: missing type specifier - int assumed. Note: C++ does not >>> support default-int (C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppc >>> ache\src\FunctionServiceImpl.cpp) >>> [C:\Users\Fdaniel\Source\Repos\geode-native2\build\cppcache\src\apache-geode-static.vcxproj] >>> >>> 4>C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(57): >>> error C4430: missing type specifier - int assumed. Note: C++ does not >>> support default-int (C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppc >>> ache\src\FunctionServiceImpl.cpp) >>> [C:\Users\Fdaniel\Source\Repos\geode-native2\build\cppcache\src\apac >>> he-geode.vcxproj] >>> >>> 31>C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(67): >>> error C2144: syntax error : 'bool' should be preceded by ';' >>> (C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\src\FunctionServiceImpl. >>> cpp) >>> [C:\Users\Fdaniel\Source\Repos\geode-native2\build\cppcache\src\apache-geode-static.vcxproj] >>> >>> 4>C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(67): >>> error C2144: syntax error : 'bool' should be preceded by ';' >>> (C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\src\FunctionServiceImpl. >>> cpp) >>> [C:\Users\Fdaniel\Source\Repos\geode-native2\build\cppcache\src\apac >>> he-geode.vcxproj] >>> 31>ClCompile: >>> >>> C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geode/utils.hpp(71) >>> : see reference to class template instantiation >>> 'apache::geode::client::dereference_equal_to<_T*>' being compiled >>> 4>ClCompile: >>> >>> C:\Users\Fdaniel\Source\Repos\geode-native2\src\cppcache\include\geo >>> d >>> e >>> /utils.hpp(71) : see reference to class template instantiation >>> 'apache::geode::client::dereference_equal_to<_T*>' being compiled >>> >>> >>> Is the windows native client build stable? >>> >>> Thanks, >>> Daniel >>> >>> This message and the information contained herein is proprietary and >>> confidential and subject to the Amdocs policy statement, >>> >>> you may review at https://www.amdocs.com/about/email-disclaimer >>> <https://www.amdocs.com/about/email-disclaimer> >> This message and the information contained herein is proprietary and >> confidential and subject to the Amdocs policy statement, >> >> you may review at https://www.amdocs.com/about/email-disclaimer >> <https://www.amdocs.com/about/email-disclaimer> >> > This message and the information contained herein is proprietary and > confidential and subject to the Amdocs policy statement, > > you may review at https://www.amdocs.com/about/email-disclaimer > <https://www.amdocs.com/about/email-disclaimer> > This message and the information contained herein is proprietary and confidential and subject to the Amdocs policy statement, you may review at https://www.amdocs.com/about/email-disclaimer <https://www.amdocs.com/about/email-disclaimer>