Re: [MS Windows] Some issues with proj-4.7.0 (repost)
I originally posted this before subscribing and, afaict, it's still waiting
for moderator approval - apologies if that duplicate turns up at some time
(or has already turned up). Anyway, I'm subscribed now.
I build using the MinGW port of gcc in the MSYS shell - ie I build in the
normal way, with './configure', 'make', 'make check' and 'make install'.
With proj-4.7.0, I had to make only one small amendment to the source in
order for the build to succeed.
In pj_mutex.c, I replaced the one occurrence of
#if defined(MUTEX_pthread) && !defined(MUTEX_win32)
This was done to avoid entry into that block, as I don't have pthread.h
(which that block of code wants to #include). I think it is possible to
build pthreads for windows, but it's something I haven't done. I'm not sure
what the correct fix actually is - but that worked fine. Seems odd that
MUTEX_pthread is defined for me, given that I don't have pthreads.
The MinGW64 (x64) compiler's winreg.h typedefs a PVALUE type, as also does
projects.h - so there's a "conflicting types" error whenever both projects.h
and winreg.h are included (as is the case with my apps). So I changed the
few occurrences of PVALUE in the proj-4.7.0 source to P_VALUE, and re-built.
That, too, works fine. Is it possible for that alteration to be made to the
official source ? (There were only 3 or 4 occurrences of the term - in
projects.h and pj_param.c only.) Or is there some other way that this
conflict should be handled ?