This is the mail archive of the
cygwin-apps
mailing list for the Cygwin project.
Re: setup.exe: error: ‘KEY_WOW64_{64,32}KEY’ was not declared in this scope
- From: Shaddy Baddah <lithium-cygwin at shaddybaddah dot name>
- To: cygwin-apps at cygwin dot com
- Date: Tue, 16 Apr 2013 01:34:32 +1000
- Subject: Re: setup.exe: error: ‘KEY_WOW64_{64,32}KEY’ was not declared in this scope
- References: <516C111F dot 5090604 at shaddybaddah dot name>
Hi,
On 16/04/13 00:39, Shaddy Baddah wrote:
I'm encountering this error whilst trying to build (32bit) setup.exe,
under 32bit Cygwin:
make[2]: Entering directory
`/cygdrive/c/Users/sbaddah/cygwin-home/workarea/cygwin-setup-build'
CXX install.o
../cygwin-setup/install.cc: In function ‘void
create_allow_protected_renames()’:
../cygwin-setup/install.cc:265:27: error: ‘KEY_WOW64_64KEY’ was not
declared in this scope
../cygwin-setup/install.cc:265:27: error: ‘KEY_WOW64_32KEY’ was not
declared in this scope
Makefile:855: recipe for target `install.o' failed
make[2]: *** [install.o] Error 1
I think it may be linked to this change:
http://sourceware.org/cgi-bin/cvsweb.cgi/setup/install.cc?rev=2.106&content-type=text/x-cvsweb-markup&cvsroot=cygwin-apps
But this change looks to have been included in the 2.795 build of
setup64.exe, so that gives me the impression I'm doing something wrong
with my build parameters.
Any help would be appreciated.
I think I may have worked out what is wrong. I understand now (actually
again, I'd forgotten) that the old mingw project is a little bit stale,
and that mingw64 is the way forward.
I'd configured my build using:
$ ../cygwin-setup/configure --host="i686-pc-mingw32" -C
which is using the legacy mingw32 compiler and its stale w32api.
That w32api has a strange guard around the definitions for the above:
#if (_WIN32_WINNT >= 0x0502)
#define KEY_WOW64_64KEY 0x0100
#define KEY_WOW64_32KEY 0x0200
#endif
And however it is defined, _WIN32_WINNT is set as 0x0400.
I am trying with:
$ ../cygwin-setup/configure --host="i686-w64-mingw32" -C
I am expecting this will work. I can report back if necessary.