Compiling a project on Windows using the following version of make and gcc I've run into the following errors, the project has integrated Tor. The error stems from the following. Getting massive amounts of unknown type errors.
src/tor/config.c line 52
#ifdef _WIN32
#include <shlobj.h>
#endif
mingw32-make -v
GNU Make 4.1
Built for i686-w64-mingw32
Copyright (C) 1988-2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=C:/mingw32/bin/../libexec/gcc/i686-w64-mingw32/4.9.2/lto-wrapper.exe
Target: i686-w64-mingw32
Configured with: ../../../src/gcc-4.9.2/configure --host=i686-w64-mingw32 --build=i686-w64-mingw32 --target=i686-w64-mingw32 --prefix=/mingw32 --with-sysroot=/c/mingw492/i686-492-posix-dwarf-rt_v3-rev1/mingw32 --with-gxx-include-dir=/mingw32/i686-w64-mingw32/include/c++ --enable-shared --enable-static --disable-multilib --enable-languages=ada,c,c++,fortran,objc,obj-c++,lto --enable-libstdcxx-time=yes --enable-threads=posix --enable-libgomp --enable-libatomic --enable-lto --enable-graphite --enable-checking=release --enable-fully-dynamic-string --enable-version-specific-runtime-libs --disable-sjlj-exceptions --with-dwarf2 --disable-isl-version-check --disable-cloog-version-check --disable-libstdcxx-pch --disable-libstdcxx-debug --enable-bootstrap --disable-rpath --disable-win32-registry --disable-nls --disable-werror --disable-symvers --with-gnu-as --with-gnu-ld --with-arch=i686 --with-tune=generic --with-libiconv --with-system-zlib --with-gmp=/c/mingw492/prerequisites/i686-w64-mingw32-static --with-mpfr=/c/mingw492/prerequisites/i686-w64-mingw32-static --with-mpc=/c/mingw492/prerequisites/i686-w64-mingw32-static --with-isl=/c/mingw492/prerequisites/i686-w64-mingw32-static --with-cloog=/c/mingw492/prerequisites/i686-w64-mingw32-static --enable-cloog-backend=isl --with-pkgversion='i686-posix-dwarf-rev1, Built by MinGW-W64 project' --with-bugurl=http://sourceforge.net/projects/mingw-w64 CFLAGS='-O2 -pipe -I/c/mingw492/i686-492-posix-dwarf-rt_v3-rev1/mingw32/opt/include -I/c/mingw492/prerequisites/i686-zlib-static/include -I/c/mingw492/prerequisites/i686-w64-mingw32-static/include' CXXFLAGS='-O2 -pipe -I/c/mingw492/i686-492-posix-dwarf-rt_v3-rev1/mingw32/opt/include -I/c/mingw492/prerequisites/i686-zlib-static/include -I/c/mingw492/prerequisites/i686-w64-mingw32-static/include' CPPFLAGS= LDFLAGS='-pipe -L/c/mingw492/i686-492-posix-dwarf-rt_v3-rev1/mingw32/opt/lib -L/c/mingw492/prerequisites/i686-zlib-static/lib -L/c/mingw492/prerequisites/i686-w64-mingw32-static/lib -Wl,--large-address-aware'
Thread model: posix
gcc version 4.9.2 (i686-posix-dwarf-rev1, Built by MinGW-W64 project)
Error
In file included from C:/mingw32/i686-w64-mingw32/include/rpcndr.h:21:0,
from C:/mingw32/i686-w64-mingw32/include/objbase.h:8,
from C:/mingw32/i686-w64-mingw32/include/ole2.h:17,
from C:/mingw32/i686-w64-mingw32/include/shlobj.h:85,
from src\tor\config.c:52:
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h: At top level:
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:14:5: error: unknown type name 'RPC_NS_HANDLE'
RPC_NS_HANDLE LookupContext;
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:15:5: error: unknown type name 'RPC_BINDING_HANDLE'
RPC_BINDING_HANDLE ProposedHandle;
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:16:5: error: unknown type name 'RPC_BINDING_VECTOR'
RPC_BINDING_VECTOR *Bindings;
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:19:3: error: unknown type name 'RPCNSAPI'
RPCNSAPI RPC_STATUS RPC_ENTRY I_RpcNsGetBuffer(PRPC_MESSAGE Message);
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:19:23: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RPC_ENTRY'
RPCNSAPI RPC_STATUS RPC_ENTRY I_RpcNsGetBuffer(PRPC_MESSAGE Message);
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:19:23: error: unknown type name 'RPC_ENTRY'
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:20:3: error: unknown type name 'RPCNSAPI'
RPCNSAPI RPC_STATUS RPC_ENTRY I_RpcNsSendReceive(PRPC_MESSAGE Message,RPC_BINDING_HANDLE *Handle);
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:20:23: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RPC_ENTRY'
RPCNSAPI RPC_STATUS RPC_ENTRY I_RpcNsSendReceive(PRPC_MESSAGE Message,RPC_BINDING_HANDLE *Handle);
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:20:23: error: unknown type name 'RPC_ENTRY'
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:21:12: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'void'
RPCNSAPI void RPC_ENTRY I_RpcNsRaiseException(PRPC_MESSAGE Message,RPC_STATUS Status);
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:22:3: error: unknown type name 'RPCNSAPI'
RPCNSAPI RPC_STATUS RPC_ENTRY I_RpcReBindBuffer(PRPC_MESSAGE Message);
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:22:23: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RPC_ENTRY'
RPCNSAPI RPC_STATUS RPC_ENTRY I_RpcReBindBuffer(PRPC_MESSAGE Message);
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:22:23: error: unknown type name 'RPC_ENTRY'
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:23:3: error: unknown type name 'RPCNSAPI'
RPCNSAPI RPC_STATUS RPC_ENTRY I_NsServerBindSearch();
^
C:/mingw32/i686-w64-mingw32/include/rpcnsip.h:23:23: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'RPC_ENTRY'
RPCNSAPI RPC_STATUS RPC_ENTRY I_NsServerBindSearch();
Full error: https://pastebin.com/HHcjH2SP