CMake support is now far more stable and supported, and should be
preferred. Caveats around CMake usage have been removed, and replaced
with recommendations to use it instead. CMake has been listed first in
the instructions to compile from source accordingly.
I followed the instructions to build with CMake on Windows, but cmake complains about missing Python interpreter.
Installation Python 2.7.x solved the issue.
```
C:\Data\Git\GitHub\foundationdb\build>cmake -G "Visual Studio 15 2017 Win64" -DBOOST_ROOT=C:\Users\chevalier\Downloads\boost_1_67_0\boost_1_67_0 c:\data\git\github\foundationdb
-- C:/Data/Git/GitHub/foundationdb C:/Data/Git/GitHub/foundationdb/build
-- Could NOT find LibreSSL, try to set the path to LibreSSL root folder in the system variable LibreSSL_ROOT (missing: LIBRESSL_CRYPTO_LIBRARY LIBRESSL_SSL_LIBRARY LIBRESSL_TLS_LIBRARY LIBRESSL_INCLUDE_DIR)
-- LibreSSL NOT Found - Will compile without TLS Support
-- You can set LibreSSL_ROOT to the LibreSSL install directory to help cmake find it
-- Found JNI: C:/Program Files/Java/jdk-11.0.2/lib/jawt.lib (Required is at least version "1.8")
-- Found Java: C:/Program Files/Java/jdk-11.0.2/bin/java.exe (found suitable version "11.0.2", minimum required is "1.8") found components: Development
-- Could NOT find Python (missing: Python_EXECUTABLE Interpreter)
CMake Error at cmake/FDBComponents.cmake:46 (message):
Could not found a suitable python interpreter
Call Stack (most recent call first):
CMakeLists.txt:60 (include)
-- Configuring incomplete, errors occurred!
See also "C:/Data/Git/GitHub/foundationdb/build/CMakeFiles/CMakeOutput.log".
See also "C:/Data/Git/GitHub/foundationdb/build/CMakeFiles/CMakeError.log".
```
After installing python
```
...
-- Found Python: C:/Python27/python.exe (found version "2.7.16") found components: Interpreter
...
-- =========================================
-- Components Build Overview
-- =========================================
-- Build Java Bindings: ON
-- Build with TLS support: OFF
-- Build Go bindings: OFF
-- Build Ruby bindings: OFF
-- Build Python sdist (make package): ON
-- Build Documentation (make html): OFF
-- =========================================
-- CPACK_COMPONENTS_ALL
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Data/Git/GitHub/foundationdb/build
```
When testing on windows, cmake seems to have trouble with ASM compiler if it is
specified as the first language:
$ cmake -G "Visual Studio 14 Win64" -DBOOST_ROOT="/cygdrive/c/Program\ Files/boost_1_67_0/" ../foundationdb
-- The ASM compiler identification is unknown
-- Didn't find assembler
-- The C compiler identification is MSVC 19.0.24215.1
-- The CXX compiler identification is MSVC 19.0.24215.1
CMake Error at CMakeLists.txt:20 (project):
No CMAKE_ASM_COMPILER could be found.
Changing the order fixes this issue and update the README.
FDB builds with TLS on Windows is currently broken due to
https://github.com/apple/foundationdb/issues/1120.
Apart from that it should work out-of-the-box. So as soon as aboves
issue is fixed, this should work.