Are you sure __debugbreak() does the right thing? It is a compiler intrinsic and we don't generically support compiler intrinsics in the edk2 (no standard libs that compilers expect). The portable way to do this in the edk2 is to use CpuBreakpoint(); that is defined in the BaseLib.h.
It has been over 5 years since I looked at this, but if you look in https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/Nt32Pkg/Sec/SecMain.c and search for LoadLibraryEx() this is the magic that makes source level debug possible for the EFI PE/COFF images. Thanks, Andrew Fish On Mar 6, 2013, at 10:31 AM, Martin Turnock <martinturn...@yahoo.com> wrote: > Michael Lorer <michael.lorer <at> opus.de> writes: > >> >> >> Hello, >> >> I investigated some more in my problem. >> And traced the problem of the not loaded symbols to an Winnt-API-call in > Nt32Pkg/Library/DxeNt32PeCoffExtraActionLib: >> Library = mWinNt->LoadLibraryEx (DllFileName, NULL, > DON’T_RESOLVE_DLL_REFERENCES); >> That call returns NULL back to Library and therefore the symbols aren’t > loaded. >> >> Right now it wasn’t possible for me to debug into the API-call. >> But with mWinNt->GetLastError(); I get back an errorcode 87: >> http://msdn.microsoft.com/en-us/library/windows/desktop/ms681382(v=vs.85).aspx >> >> Does someone have any ideas what to check further? >> >> Regards, >> Michael >> >> Von: Michael Lorer [mailto:michael.lorer <at> opus.de] Gesendet: Dienstag, >> 4. > Dezember 2012 16:33An: edk2-devel <at> lists.sourceforge.netBetreff: [edk2] > Source-level-debugging (NT32 + MS Visual Studio 2010) >> >> Hello, >> >> I set up my UEFI Build-environment as described here: >> http://uefi.blogspot.de/2012/06/how-to-debug-edk2s-windows-hosted-uefi.html >> >> I’m using Microsoft Windows 7, 64Bit together with MS Visual Studio 2010 > Premium. >> Right now I’m able to build the NT32-package and include some own packages >> in > the build-process, adding them to the Nt32Pkg.inf-file. >> But I’m not able to get the source level debugging working for other modules > than NT32. >> >> When I start SecMain.exe out of Visual Studio and break it during executing > the Shell I can step through the code in Visual Studio. >> But if I add the expression __debugbreak() into the >> HelloWorld.efi-application > and rebuild everything, the Breakpoint is cached after I start NT32 and run > Helloworld.efi in the shell. But no sourcecode is shown. >> The console throws the following message: >> WARNING: No source level debug > d:\edk2\Build\NT32\DEBUG_VS2010x86\IA32\MdeModulePkg\Application\HelloWorld\Hell > oworld\DEBUG\HelloWorld.DLL. >> >> The pdb-files are generated and the header-information in the .efi-file to > locate the correct pdb-file is also right. >> Any idea where to look or what to change to get the source level debugging > working for my own modules? >> >> Regards, >> Michael >> >> >> ------------------------------------------------------------------------------ >> LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial >> Remotely access PCs and mobile devices and provide instant support >> Improve your efficiency, and focus on delivering more value-add services >> Discover what IT Professionals Know. Rescue delivers >> http://p.sf.net/sfu/logmein_12329d2d >> >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel <at> lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/edk2-devel >> > > Hi Michael, > > Did you get to the bottom of this? > > Regards, Martin > > > ------------------------------------------------------------------------------ > Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester > Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the > endpoint security space. For insight on selecting the right partner to > tackle endpoint security challenges, access the full report. > http://p.sf.net/sfu/symantec-dev2dev > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/edk2-devel ------------------------------------------------------------------------------ Symantec Endpoint Protection 12 positioned as A LEADER in The Forrester Wave(TM): Endpoint Security, Q1 2013 and "remains a good choice" in the endpoint security space. For insight on selecting the right partner to tackle endpoint security challenges, access the full report. http://p.sf.net/sfu/symantec-dev2dev _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel