I was able to compile both ndn-cxx and NFD on windows platform using Cygwin64.
Most of the tools and dependencies can be installed using cygwin-provided packages. The only exception is CryptoPP library, which has small problem with compilation under cygwin. I have created a fork of cryptopp with one small patch that addresses the issue:
git clone https://github.com/cawka/cryptopp
cd cryptopp
make
make install
I'm attaching a list of packages that are installed on my system that are enough to compile the code.
Due to bugs in cygwin, code needs to be compiled with customized C++ flags. The following worked for me:
ndn-cxx¶
Debug mode
CXXFLAGS="-std=c++0x -std=c++11 -pedantic -Wall -O0 -Og -g3 -Werror -Wno-error=maybe-uninitialized -U__STRICT_ANSI__ -D_GLIBCXX_USE_C99_DYNAMIC -D_GLIBCXX_USE_C99" ./waf configure --debug --with-tests
Optimized mode
CXXFLAGS="-std=c++0x -std=c++11 -pedantic -Wall -O2 -g -Werror -Wno-error=maybe-uninitialized -U__STRICT_ANSI__ -D_GLIBCXX_USE_C99_DYNAMIC -D_GLIBCXX_USE_C99" ./waf configure
NFD¶
Debug mode
CXXFLAGS="-std=c++0x -std=c++11 -pedantic -Wall -O0 -Og -g3 -Werror -Wno-error=maybe-uninitialized -U__STRICT_ANSI__ -D_GLIBCXX_USE_C99_DYNAMIC -D_GLIBCXX_USE_C99 -D__STDC_FORMAT_MACROS" ./waf configure --debug --with-tests --without-libpcap
Optimized mode
CXXFLAGS="-std=c++0x -std=c++11 -pedantic -Wall -O2 -g -Werror -Wno-error=maybe-uninitialized -U__STRICT_ANSI__ -D_GLIBCXX_USE_C99_DYNAMIC -D_GLIBCXX_USE_C99 -D__STDC_FORMAT_MACROS" ./waf configure --without-libpcap