Hi there,
I just checked out a fresh cvs tree and tried to compile it with dev-c++, which uses the mingw of the gcc suite. I get an error with filmQT.cpp:
g++.exe -c Pixes/filmQT.cpp -o Pixes/filmQT.o -I"D:/Programme/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/backward" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/mingw32" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2" -I"D:/Programme/Dev-Cpp/include" -I"../src" -I"../../pd/src" -I"../../GemLibs/tiff/libtiff" -I"../../GemLibs/JPEG" -I"../../GemLibs/wintab/include" -I"../../GemLibs/freetype2/include" -I"../../GemLibs/FTGL/include" -I"../../MS PSDK/Samples/Multimedia/DirectShow/BaseClasses" -I"../../MS PSDK/Include" -I"D:/Programme/Microsoft DirectX 9.0 SDK (February 2005)/Include" -I"D:/Dokumente und Einstellungen/VJ/Eigene Dateien/GEM/QT6 SDK (Win)/Interfaces & Libraries/QTDevWin/CIncludes" -I"../../QT6 SDK (Win)/Interfaces & Libraries/QTDevWin/CIncludes" -D__GNUWIN32__ -march=pentium3 -D_M_IX86=600 -W -finline-functions -DNDEBUG -DWIN32 -D_WINDOWS -DNT -D_LANGUAGE_C_PLUS_PLUS -DWIN32_LEAN_AND_MEAN -DGEM_INTERNAL -Wno-multichar -march=pentium3 -mfpmath=sse -O2
Pixes/filmQT.cpp: In member function `virtual bool filmQT::open(char*, int)': Pixes/filmQT.cpp:209: error: jump to label `unsupported'
Pixes/filmQT.cpp:106: error: from here
Pixes/filmQT.cpp:160: error: crosses initialization of `short int flags'
Pixes/filmQT.cpp:158: error: crosses initialization of `OSType whichMediaType'
Pixes/filmQT.cpp:126: error: crosses initialization of `short int refnum'
Pixes/filmQT.cpp:113: error: crosses initialization of `OSErr err'
Pixes/filmQT.cpp:109: error: crosses initialization of `int wantedFormat'
make.exe: *** [Pixes/filmQT.o] Error 1
Execution terminated
I didn't knew thatg++.exe -c Pixes/filmQT.cpp -o Pixes/filmQT.o -I"D:/Programme/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/backward" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/mingw32" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2" -I"D:/Programme/Dev-Cpp/include" -I"../src" -I"../../pd/src" -I"../../GemLibs/tiff/libtiff" -I"../../GemLibs/JPEG" -I"../../GemLibs/wintab/include" -I"../../GemLibs/freetype2/include" -I"../../GemLibs/FTGL/include" -I"../../MS PSDK/Samples/Multimedia/DirectShow/BaseClasses" -I"../../MS PSDK/Include" -I"D:/Programme/Microsoft DirectX 9.0 SDK (February 2005)/Include" -I"D:/Dokumente und Einstellungen/VJ/Eigene Dateien/GEM/QT6 SDK (Win)/Interfaces & Libraries/QTDevWin/CIncludes" -I"../../QT6 SDK (Win)/Interfaces & Libraries/QTDevWin/CIncludes" -D__GNUWIN32__ -march=pentium3 -D_M_IX86=600 -W -finline-functions -DNDEBUG -DWIN32 -D_WINDOWS -DNT -D_LANGUAGE_C_PLUS_PLUS -DWIN32_LEAN_AND_MEAN -DGEM_INTERNAL -Wno-multichar -march=pentium3 -mfpmath=sse -O2
Pixes/filmQT.cpp: In member function `virtual bool filmQT::open(char*, int)': Pixes/filmQT.cpp:209: error: jump to label `unsupported'
Pixes/filmQT.cpp:106: error: from here
Pixes/filmQT.cpp:160: error: crosses initialization of `short int flags'
Pixes/filmQT.cpp:158: error: crosses initialization of `OSType whichMediaType'
Pixes/filmQT.cpp:126: error: crosses initialization of `short int refnum'
Pixes/filmQT.cpp:113: error: crosses initialization of `OSErr err'
Pixes/filmQT.cpp:109: error: crosses initialization of `int wantedFormat'
make.exe: *** [Pixes/filmQT.o] Error 1
Execution terminated
It would be great if someone could help out here ... Am I missing an essential compiler switch? The code itself looks okay, although I'm bit surprised that "goto" has a right to existence outside the BASIC-world.
With kind regards, Thoralf.
___________________________________________________________ How much free photo storage do you get? Store your holiday snaps for FREE with Yahoo! Photos http://uk.photos.yahoo.com
Hi again,
sorry for the confusing mail ... I'll learn how to cut & paste the right way, I promise :-)
thoralf.
___________________________________________________________ Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com
Thoralf Schulze wrote:
Hi there,
I just checked out a fresh cvs tree and tried to compile it with dev-c++, which uses the mingw of the gcc suite. I get an error with filmQT.cpp:
Pixes/filmQT.cpp: In member function `virtual bool filmQT::open(char*, int)': Pixes/filmQT.cpp:209: error: jump to label `unsupported'
Pixes/filmQT.cpp:106: error: from here
Pixes/filmQT.cpp:160: error: crosses initialization of `short int flags'
thanks. i have committed a fix for this to the CVS (but haven't yet compiled neither under OSX nor under windows (and on linux it is unused)
mfg.a.sdr IOhannes
Johannes,
thank you. While we're at it:
there is still an issue with pix_filmNT.cpp and gcc on line 211:
m_nRawBuffSize = max(streaminfo.dwSuggestedBufferSize, m_pbmihRaw->biSizeImage);
"max" isn't recognized as a valid function. gcc doesn't complain if it is preceded by a "std::", so the final line reads:
m_nRawBuffSize = std::max(streaminfo.dwSuggestedBufferSize, m_pbmihRaw->biSizeImage);
I hope this is an acceptable workaround ...
with kind regards, Thoralf.
___________________________________________________________ Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com
Thoralf Schulze wrote:
Johannes,
thank you. While we're at it:
there is still an issue with pix_filmNT.cpp and gcc on line 211:
I hope this is an acceptable workaround ...
actually pix_filmNT is kind of deprecated; pix_filmNEW is the way to go.
anyhow, i have checked this into the CVS (and will try to compile on M$VC LATER)
apart from that: does it work ?
mf.asd.r IOhannes
Hi again,
I hope I don't bother you too much :-)
The weird NULL pointer issue in pix_videoDS.cpp still exists. This file includes memory, which in turn includes stl_algobase.h, which includes iosfwd, which finally includes c++locale.h. When this header file gets processed, g++ chokes on a suddenly missing NULL pointer definition, which causes loads of " expected primary-expression before ')' token "-errors whenever such a pointer is subsequently used. I don't know if gcc or the mingw port or the dev-c++ ide is to blame - after all, I'm not a c-programmer. Defining the NULL pointer explicitly at the beginning of pix_videoDS.cpp doesn't help. I could either replace all occurencies of NULL to 0 or add a #undef 0 \n#define NULL 0 to every file concerned, but I get the feeling that this is not the right way of dealing with this issue ...
I really appreciate any hints, thoralf.
___________________________________________________________ How much free photo storage do you get? Store your holiday snaps for FREE with Yahoo! Photos http://uk.photos.yahoo.com
Hi all,
still struggling to get pix_videoDS.cpp to compile with mingw ... Any other self compilers out there?
It's still about this NULL pointer thingie. I played around a bit more, and found out that if I change #include <memory> in line 28 to #include <memory.h>, g++ does not complain about the missing or vanished null pointer macro anymore. This strikes me as being really weird: shouldn't memory.h be pretty much of a standard c++ header, and shouldn't memory and memory.h refer to exactly the same header file?
Another two things:
1.) during the remainder of the compilation, g++ complains about a lot of redefinitions of certain functions, an example:
Compiler: Default compiler Building Makefile: "D:\Dokumente und Einstellungen\VJ\Eigene Dateien\GEM\Gem\src\Makefile.win" Executing make... make.exe -f "D:\Dokumente und Einstellungen\VJ\Eigene Dateien\GEM\Gem\src\Makefile.win" all g++.exe -c Pixes/pix_videoDS.cpp -o Pixes/pix_videoDS.o -I"D:/Programme/Dev-Cpp/lib/gcc/mingw32/3.4.2/include" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/backward" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2/mingw32" -I"D:/Programme/Dev-Cpp/include/c++/3.4.2" -I"D:/Programme/Dev-Cpp/include" -I"../src" -I"../../pd/src" -I"../../GemLibs/tiff/libtiff" -I"../../GemLibs/JPEG" -I"../../GemLibs/wintab/include" -I"../../GemLibs/freetype2/include" -I"../../GemLibs/FTGL/include" -I"../../MS PSDK/Samples/Multimedia/DirectShow/BaseClasses" -I"../../MS PSDK/Include" -I"D:/Programme/Microsoft DirectX 9.0 SDK (February 2005)/Include" -I"D:/Dokumente und Einstellungen/VJ/Eigene Dateien/GEM/QT6 SDK (Win)/Interfaces & Libraries/QTDevWin/CIncludes" -I"../../QT6 SDK (Win)/Interfaces & Libraries/QTDevWin/CIncludes" -D__GNUWIN32__ -march=pentium3 -D_M_IX86=600 -W -finline-functions -DNDEBUG -DWIN32 -D_WINDOWS -DNT -D_LANGUAGE_C_PLUS_PLUS -DWIN32_LEAN_AND_MEAN -DGEM_INTERNAL -Wno-multichar -march=pentium3 -mfpmath=sse -O2
In file included from ../../MS PSDK/Samples/Multimedia/DirectShow/BaseClasses/streams.h:146, from Pixes/pix_videoDS.cpp:32: ../../MS PSDK/Samples/Multimedia/DirectShow/BaseClasses/wxutil.h:375:1: warning: "wsprintfW" redefined In file included from ../../MS PSDK/Include/dshow.h:41,
from Pixes/pix_videoDS.h:21, from Pixes/pix_videoDS.cpp:27:
../../MS PSDK/Include/strsafe.h:7786:1: warning: this is the location of the previous definition
... and so on. Could this be due to chenges in the M$ platform sdk, and if so, is there an easy way to work around this?
2.) g++ finally quits at line 1271:
Pixes/pix_videoDS.cpp: In function `long int AddGraphToRot(IUnknown*, DWORD*)': Pixes/pix_videoDS.cpp:1271: error: `wsprintfWInternal' undeclared (first use this function)
Pixes/pix_videoDS.cpp:1271: error: (Each undeclared identifier is reported only once for each function it appears in.)
any hints on how to fix this?
grateful as usual, thoralf.
___________________________________________________________ Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com