We're sorry FeatSynth doesn't work with Visual C++.

Regrettably, we have not yet managed to get FeatSynth to build properly in Microsoft Visual Studio. The main reason is discussed here. Quoth Microsoft:

Some STL classes contain nested classes. These classes can not be exported. For instance, deque contains a nested class deque::iterator. If you export deque, you will get a warning that you must export deque::iterator. If you export deque::iterator, you get a warning that you must export deque. This is caused by a designed limitation that once a template class is instantiated, it can not be re-instantiated and exported. The only STL container that can currently be exported is vector. The other containers (that is, map, set, queue, list, deque) all contain nested classes and cannot be exported.


Turns out it's tricky in Visual C++ to write class definitions that include some STL that's not std::vector or std::string, then export that class in a .DLL. FeatSynth was mostly developed using g++, though, which happily let us write and dynamically link against our class definitions that way, so that's how we wrote 'em, blissfully ignorant of the DLL hell that lied in wait. While we're figuring out how to alleviate this problem in Visual C++, for the moment if you want to build FeatSynth on Windows, you'll have to use Cygwin. Many sincere apologies to Visual Studio users.