From: JonY <jo...@us...> - 2011-10-05 09:21:17
|
On 10/5/2011 07:23, Chris Sutcliffe wrote: > Hi All, > > I'm using the x86_64 cross compiler under Cygwin using the latest > mingw-w64 CRT available with Cygwin and I've run in to a snag using > IAudioEndpointVolume. I realize it may be an incomplete > implementation as per the warning: > > /usr/x86_64-w64-mingw32/sys-root/mingw/include/Endpointvolume.h:34:2: > warning: #warning COM interfaces layout in this header has not been > verified. > /usr/x86_64-w64-mingw32/sys-root/mingw/include/Endpointvolume.h:35:2: > warning: #warning COM interfaces with incorrect layout may not work at > all. > /usr/x86_64-w64-mingw32/sys-root/mingw/include/Endpointvolume.h:36:85: > note: #pragma message: Interface IAudioEndpointVolume has unverified > layout. > > But I've hit a snag with __uuidof(IAudioEndpointVolume): > > undefined reference to `_GUID const& __mingw_uuidof<IAudioEndpointVolume>()' > > Is this expected (i.e. is the IAudioEndpointVolume interface not fully > implemented)? > > Thank you, > > Chris > __uuidof is really only implemented for gcc 4.7 or later, its emulated with some C++ codes for earlier gcc. Its possibly something wrong with the crt stuff, or the header itself, I need to dig deeper. As for the warnings, its mainly because most of the stuff is pulled directly from MSDN without verification. |