On 2016/3/17 10:02, Andrew Fish wrote:

On Mar 16, 2016, at 6:59 PM, Zeng, Star <[email protected]> wrote:

On 2016/3/17 7:12, Andrew Fish wrote:
I was trying to move over to DxeDebugPrintErrorLevelLib, but I can't get it to 
build

For example I made DXE use 
DebugPrintErrorLevelLib|MdeModulePkg/Library/DxeDebugPrintErrorLevelLib/DxeDebugPrintErrorLevelLib.inf
 in the EmulatorPkg and I get this error:

/Users/andrewfish/work/src/edk2/EmulatorPkg/EmulatorPkg.dsc(...): error F002: 
Library 
[/Users/andrewfish/work/src/edk2/MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf]
 with constructors has a cycle
                consumed by 
/Users/andrewfish/work/src/edk2/MdePkg/Library/UefiLib/UefiLib.inf

The error message is not very helpful on root causing the issue....

But a circular constructor issue does not seem that strange in the DebugLib 
stack as everything uses that! If I go into DxeDebugPrintErrorLevelLib.inf  and 
remove the HobLib I don't get the Constructor error, but I do get a link error.

So it looks like the DxeDebugPrintErrorLevelLib depends on the Hob lib that 
depends on the DebugLib that depends on the DxeDebugPrintErrorLevelLib. How did 
this every work? The only place I see it used is the Nt32Pkg, and I don't have 
a system to test that on????

Just tried NT32 with VS2015, and it builds and works well.

Liming & Yonghong, any idea on this?


I was wondering if it had to do with the lower level libraries having a 
constructor? So maybe library implementation matters?

If this circular constructor issue could be reproduced with only one module linked with DxeDebugPrintErrorLevelLib (I mean other modules to link with BaseDebugPrintErrorLevelLib, only the module links to DxeDebugPrintErrorLevelLib), then that may be helpful to scrub all the library instances the module links to find out what is the matter. :)

Thanks,
Star

Thanks,

Andrew Fish

Thanks,
Star

Any ideas?

Thanks,

Andrew Fish


_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to