On Mon, Oct 26, 2020 at 2:41 PM Nikolay Sivov <nsi...@codeweavers.com> wrote: > > > > On 10/26/20 4:25 PM, Vincent Torri wrote: > > On Mon, Oct 26, 2020 at 2:06 PM Nikolay Sivov <nsi...@codeweavers.com> > > wrote: > >> > >> > >> On 10/26/20 4:00 PM, Vincent Torri wrote: > >>> On Mon, Oct 26, 2020 at 12:44 PM Nikolay Sivov <nsi...@codeweavers.com> > >>> wrote: > >>>> > >>>> On 10/26/20 2:35 PM, Vincent Torri wrote: > >>>>> On Mon, Oct 26, 2020 at 12:15 PM Nikolay Sivov <nsi...@codeweavers.com> > >>>>> wrote: > >>>>>> On 10/26/20 11:55 AM, Vincent Torri wrote: > >>>>>>> On Sun, Oct 25, 2020 at 10:03 PM Biswapriyo Nath > >>>>>>> <nathbap...@gmail.com> wrote: > >>>>>>>> Which specific APIs are you interested in? As far as I know, most of > >>>>>>>> them are COM interfaces. > >>>>>>> IDXGIDebug_ReportLiveObjects > >>>>>>> > >>>>>>> i'm coding in C, not C++. > >>>>>> It's a regular interface method available through dxgidebug.h, why do > >>>>>> you need an import library for this? > >>>>> if i link against the dll directly, IDXGIDebug_ReportLiveObjects is > >>>>> undefined > >>>>> > >>>>> so i guess that ass all the other symbols work, there is something in > >>>>> the import lib that takes care of the C API > >>>> To get C macros you'll need: > >>>> > >>>> #define COBJMACROS > >>> i know, i already do that and i already call direct3d, direct2d and dxgi > >>> C API > >>> > >>>> My guess is that you should use DXGIGetDebugInterface(&IID_IDXGIDebug), > >>>> and then call IDXGIDebug_ReportLiveObjects() on returned interface. > >>> btw, without linking to the dxgidebug dll : > >>> > >>> $ gcc -g -Wall -Wextra -o d2d.exe d2d.c -ld3d11 -ld2d1 -ldxgi -luuid > >>> C:/Documents/msys2/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: > >>> C:\Documents\msys2\tmp\ccjEHgWG.o:d2d.c:(.rdata$.refptr.DXGI_DEBUG_ALL[.refptr.DXGI_DEBUG_ALL]+0x0): > >>> undefined reference to `DXGI_DEBUG_ALL' > >>> C:/Documents/msys2/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe: > >>> C:\Documents\msys2\tmp\ccjEHgWG.o:d2d.c:(.rdata$.refptr.IID_IDXGIDebug[.refptr.IID_IDXGIDebug]+0x0): > >>> undefined reference to `IID_IDXGIDebug' > >>> collect2.exe: error: ld returned 1 exit status > >>> > >>> DXGI_DEBUG_ALL and IID_IDXGIDebug are defined only with C++ in dxgidebug.h > >> How does it work with MS C compiler? You probably need to link with > >> -ldxguid as well. > > same error > Again, what would you be using on Windows with MS compiler to link with > these guids?
VS is no go : i plan to use direct2d and VS' d2d.h does not include C interface... >My guess is dxguid, and if true mingw will simply have to > amend it with dxgidebug guids. so mingw problem... > > > > > > _______________________________________________ > > Mingw-w64-public mailing list > > Mingw-w64-public@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/mingw-w64-public > > > > _______________________________________________ > Mingw-w64-public mailing list > Mingw-w64-public@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/mingw-w64-public _______________________________________________ Mingw-w64-public mailing list Mingw-w64-public@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mingw-w64-public