
Another minor point is that the library assumes Cygwin is POSIX and tries `using ::setenv;`, which is a compile error.
I fixed this by changing cenv.hpp as follows: #if defined(BOOST_WINDOWS) || defined(__CYGWIN__) #include <boost/nowide/windows.hpp> #endif namespace boost { namespace nowide { #if !defined(BOOST_WINDOWS) && !defined(__CYGWIN__) && !defined(BOOST_NOWIDE_DOXYGEN) and now everything compiles under Cygwin. I get the following two test failures: testing.capture-output ..\..\..\bin.v2\libs\nowide\test\test_system_n.test\gcc-cxx03-6.3.0\debug\test_system_n.run ====== BEGIN OUTPUT ====== Failed Error boost::nowide::getenv("BOOST_NOWIDE_TEST") in test_system.cpp:25 main Failed Error boost::nowide::system(command.c_str()) == 0 in test_system.cpp:75 main EXIT STATUS: 1 ====== END OUTPUT ======