It seems like there is a small mistake in the test logic on line 30 of 'source/inlines.cpp' that causes some applications which use GEOS to not compile, complaining about common items not being defined. This has been brought up in several mailing list conversations, and appears to only apply to 3.0.0rc4. The fix is documented in the linked mailing list conversation, but can be summarized as :
on line 30 of 'source/inlines.cpp' change:
#if defined(__MINGW32__) && !defined(DLL_EXPORT)
to:
#if !defined(__MINGW32__) || defined(__MINGW32__) && !defined(DLL_EXPORT)