http://bugs.winehq.org/show_bug.cgi?id=13858
Summary: Compile error in dlls/setupapi/devinst.c Product: Wine Version: CVS/GIT Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: blocker Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: david.ronis@mcgill.ca
I'm building today's cvs head. I get the following error (using gcc-4.2.4):
/usr/bin/gcc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_SETUPAPI_ -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wwrite-strings -Wpointer-arith -O3 -march=pentium4 -ffast-math -funroll-loops -fomit-frame-pointer -o devinst.o devinst.c devinst.c:3919: error: expected ')' before 'dnDevInst' devinst.c:3937: error: expected ')' before 'dnDevInst' devinst.c:3961: error: expected declaration specifiers or '...' before 'DEVINST' devinst.c: In function 'CM_Get_Device_ID_Size': devinst.c:3964: error: 'dnDevInst' undeclared (first use in this function) devinst.c:3964: error: (Each undeclared identifier is reported only once devinst.c:3964: error: for each function it appears in.) devinst.c:3971: error: 'CR_NO_SUCH_DEVINST' undeclared (first use in this function)
http://bugs.winehq.org/show_bug.cgi?id=13858
--- Comment #1 from Vitaliy Margolen vitaliy@kievinfo.com 2008-06-11 23:38:31 --- Do not use -fomit-frame-pointer Did you 'make distclean' before compiling wine?
What distro?
http://bugs.winehq.org/show_bug.cgi?id=13858
Dmitry Timoshkov dmitry@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|blocker |normal
http://bugs.winehq.org/show_bug.cgi?id=13858
--- Comment #2 from David Ronis david.ronis@mcgill.ca 2008-06-12 10:25:58 --- Thanks for the reply:
1. I've removed -ffomit-frame-pointer (actually, I'm running with the default CFLAGS/CXXFLAGS). 2. I did make distclean before configure, followed by make depend && make. 3. I'm running a fairly modified slackware-12.0.
As expected, I get the identical error:
/usr/bin/gcc -c -I. -I. -I../../include -I../../include -D__WINESRC__ -D_SETUPAPI_ -D_REENTRANT -fPIC -Wall -pipe -fno-strict-aliasing -Wdeclaration-after-statement -Wwrite-strings -Wpointer-arith -o devinst.o devinst.c devinst.c:3919: error: expected ')' before 'dnDevInst' devinst.c:3937: error: expected ')' before 'dnDevInst' devinst.c:3961: error: expected declaration specifiers or '...' before 'DEVINST' devinst.c: In function 'CM_Get_Device_ID_Size': devinst.c:3964: error: 'dnDevInst' undeclared (first use in this function) devinst.c:3964: error: (Each undeclared identifier is reported only once devinst.c:3964: error: for each function it appears in.) devinst.c:3971: error: 'CR_NO_SUCH_DEVINST' undeclared (first use in this function)
http://bugs.winehq.org/show_bug.cgi?id=13858
--- Comment #3 from Juan Lang juan_lang@yahoo.com 2008-06-12 19:47:40 --- DEVINST is declared in cfgmgr32.h, with no tricky includes or whatnot to trip it up: typedef DWORD DEVINST, *PDEVINST;
That, in turn, is included by devinst.c: #include "cfgmgr32.h"
I think you have a bug with your compiler setup. If you want to make sure cfgmgr32.h is being included, modify it with something like: #pragma error "Got here" around the DEVINST declaration. If you never see the error, you need to track down why it isn't getting included. If you do, you need to find out why your compiler can't typedef correctly.
http://bugs.winehq.org/show_bug.cgi?id=13858
--- Comment #4 from David Ronis david.ronis@mcgill.ca 2008-06-12 21:29:50 --- You wote that DEVINST is declared in cfgmgr32.h, with no tricky includes or whatnot to trip it up: typedef DWORD DEVINST, *PDEVINST;
When I looked, in the include/cfgmgr32.h file I had there was no such typedef. So, I decided to purge the wine tree and restart from scratch (via cvs). This time it built without problem. The resulting wine works. My suspicion is that there was some sort of issue with cvs not upgrading some file(s) properly. (I've had this happen in the past). What's interesting is that I don't see this happening on several other projects I follow (again by CVS). The worst I get in these are merge failures resulting in weird >>>>>>> <<<<< constructs in the affected files. These are easy to spot, purge and reload.
Anyhow thanks for your help.
http://bugs.winehq.org/show_bug.cgi?id=13858
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID
--- Comment #5 from Vitaliy Margolen vitaliy@kievinfo.com 2008-06-12 22:07:11 --- Invalid then. Please use git next time.
http://bugs.winehq.org/show_bug.cgi?id=13858
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #6 from Vitaliy Margolen vitaliy@kievinfo.com 2008-06-12 22:07:20 --- Closing invalid
http://bugs.winehq.org/show_bug.cgi?id=13858
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|CVS/GIT |unspecified