Updating to latest EDK2 and now get NMAKE: fatal error U1073: Don't know how to make.. on some items?


David F.
 

Hi,

I haven't updated the edk2 in quite a while, I went ahead and did it tonight, stdlib was removed so I had to move stuff around.  Where I used to have C:\EDK2, I now have C:\EDK\EDK2 and C:\EDK\EDK2-CLIB.   My private directory is still under C:\EDK\EDK2\Acme.   After figuring out how to get stdlib on its own repository by using the new directory, I then had to setup a batch file to do my edksetup in a different way.  Now has:

set WORKSPACE=%CD%
set PACKAGES_PATH=%WORKSPACE%\edk2-libc;%WORKSPACE%\edk2
set EDK_TOOLS_PATH=%WORKSPACE%\edk2\BaseTools
cd %WORKSPACE%\edk2
edksetup.bat

It's all looking pretty good.  I am using VS2008 for my EDK builds, I decided to stay with my old build_rule.txt, target.txt and tools_def.txt which has some older stuff in it that doesn't apply (I looked at the new stuff, but I have some custom switches and it wasn't much different).   So I run my build switch to build my UEFI application and it starts and builds some items, but then dies with the NMAKE failure and I have no clue why.   Here are some of the details after deleting c:\edk\build which is where it wants to go.

Build environment: Windows-10-10.0.18362
Build start time: 00:33:37, May.25 2020
WORKSPACE        = c:\edk
PACKAGES_PATH    = c:\edk\edk2-libc;c:\edk\edk2
EDK_TOOLS_PATH   = c:\edk\edk2\basetools
EDK_TOOLS_BIN    = c:\edk\edk2\basetools\bin\win32
CONF_PATH        = c:\edk\edk2\conf
PYTHON_COMMAND   = C:\python27-x64\python.exe
Architecture(s)  = X64
Build target     = RELEASE
Toolchain        = VS2008x86
Active Platform          = c:\edk\edk2\Acme\Acme.dsc
build: : warning: Module MetaFile [Sources] is missing local header!
    Local Header: c:\edk\edk2-libc\stdlib\libc\gdtoa\gdtoaimp.h not found in c:\edk\edk2-libc\StdLib\LibC\gdtoa\gdtoa.inf
build: : warning: Module MetaFile [Sources] is missing local header!
    Local Header: c:\edk\edk2-libc\stdlib\libc\gdtoa\gdtoa.h not found in c:\edk\edk2-libc\StdLib\LibC\gdtoa\gdtoa.inf
build: : warning: Module MetaFile [Sources] is missing local header!
    Local Header: c:\edk\edk2-libc\stdlib\libc\time\tzfile.h not found in c:\edk\edk2-libc\StdLib\LibC\Time\Time.inf
build: : warning: Module MetaFile [Sources] is missing local header!
  .... Several more like this from stdlib ....
Building ... c:\edk\edk2\Acme\Library\ABLegacySpeakerLib\ABLegacySpeakerLib.inf [X64]
Building ... c:\edk\edk2\Acme\Library\ABMemDumpLib\ABMemDumpLib.inf [X64]
Building ... c:\edk\edk2\Acme\Library\ABVSSupportLib\ABVSSupportLib.inf [X64]
    "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\x86_amd64\cl.exe" /Foc:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABLegacySpeakerLib\ABLegacySpeakerLib\OUTPUT\.\ /nologo /c /WX /GS- /X /W4 /Gs32768 /O1ib2s /GL- /Gy /FIAutoGen.h /EHs-c- /GR- /GF /X /Zc:wchar_t- /D UEFI_C_SOURCE /D MDEPKG_NDEBUG /D NDEBUG /Ic:\edk\edk2\Acme\Library\ABLegacySpeakerLib  /Ic:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABLegacySpeakerLib\ABLegacySpeakerLib\DEBUG  /Ic:\edk\edk2\MdePkg  /Ic:\edk\edk2\MdePkg\Include  /Ic:\edk\edk2\MdePkg\Include\X64  /Ic:\edk\edk2\Acme  /Ic:\edk\edk2\Acme\Include  /Ic:\edk\edk2\Acme\Include\AB\UEFI  /Ic:\edk\edk2\Acme\Include\AB\fastgui  /Ic:\edk\edk2\Acme\Include\AB  /Ic:\edk\edk2\Acme\Include\IPP c:\edk\edk2\Acme\Library\ABLegacySpeakerLib\ABLegacySpeakerLib.c
Building ... c:\edk\edk2\Acme\Library\ABMountedCPPEntryLib\ABMountedCPPEntryLib.inf [X64]
Building ... c:\edk\edk2\Acme\Library\ABSafeOpenProtocolLib\ABSafeOpenProtocolLib.inf [X64]
    "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\x86_amd64\cl.exe" /Foc:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABMemDumpLib\ABMemDumpLib\OUTPUT\.\ /nologo /c /WX /GS- /X /W4 /Gs32768 /O1ib2s /GL- /Gy /FIAutoGen.h /EHs-c- /GR- /GF /X /Zc:wchar_t- /D UEFI_C_SOURCE /D MDEPKG_NDEBUG /D NDEBUG /Ic:\edk\edk2\Acme\Library\ABMemDumpLib  /Ic:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABMemDumpLib\ABMemDumpLib\DEBUG  /Ic:\edk\edk2\MdePkg  /Ic:\edk\edk2\MdePkg\Include  /Ic:\edk\edk2\MdePkg\Include\X64  /Ic:\edk\edk2\Acme  /Ic:\edk\edk2\Acme\Include  /Ic:\edk\edk2\Acme\Include\AB\UEFI  /Ic:\edk\edk2\Acme\Include\AB\fastgui  /Ic:\edk\edk2\Acme\Include\AB  /Ic:\edk\edk2\Acme\Include\IPP c:\edk\edk2\Acme\Library\ABMemDumpLib\ABMemDumpLib.c
Building ... c:\edk\edk2\MdePkg\Library\UefiApplicationEntryPoint\UefiApplicationEntryPoint.inf [X64]
ABLegacySpeakerLib.c
Building ... c:\edk\edk2\MdePkg\Library\BaseIoLibIntrinsic\BaseIoLibIntrinsic.inf [X64]
    "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\x86_amd64\cl.exe" /Foc:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABVSSupportLib\ABVSSupportLib\OUTPUT\.\ /nologo /c /WX /GS- /X /W4 /Gs32768 /O1ib2s /GL- /Gy /FIAutoGen.h /EHs-c- /GR- /GF /X /Zc:wchar_t- /D UEFI_C_SOURCE /D MDEPKG_NDEBUG /D NDEBUG /Ic:\edk\edk2\Acme\Library\ABVSSupportLib  /Ic:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABVSSupportLib\ABVSSupportLib\DEBUG  /Ic:\edk\edk2\MdePkg  /Ic:\edk\edk2\MdePkg\Include  /Ic:\edk\edk2\MdePkg\Include\X64  /Ic:\edk\edk2\Acme  /Ic:\edk\edk2\Acme\Include  /Ic:\edk\edk2\Acme\Include\AB\UEFI  /Ic:\edk\edk2\Acme\Include\AB\fastgui  /Ic:\edk\edk2\Acme\Include\AB  /Ic:\edk\edk2\Acme\Include\IPP c:\edk\edk2\Acme\Library\ABVSSupportLib\ABVSSupportLib.c
Building ... c:\edk\edk2\Acme\Library\ABCPPSupportLib\ABCPPSupportLib.inf [X64]
ABMemDumpLib.c
    "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\x86_amd64\lib.exe" /NOLOGO /LTCG /OUT:c:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABLegacySpeakerLib\ABLegacySpeakerLib\OUTPUT\ABLegacySpeakerLib.lib @c:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABLegacySpeakerLib\ABLegacySpeakerLib\OUTPUT\object_files.lst
NMAKE : fatal error U1073: don't know how to make 'c:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABMountedCPPEntryLib\ABMountedCPPEntryLib\OUTPUT\ABMountedCPPEntryLib.obj'
Stop.
ABVSSupportLib.c
    "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\x86_amd64\cl.exe" /Foc:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABSafeOpenProtocolLib\ABSafeOpenProtocolLib\OUTPUT\.\ /nologo /c /WX /GS- /X /W4 /Gs32768 /O1ib2s /GL- /Gy /FIAutoGen.h /EHs-c- /GR- /GF /X /Zc:wchar_t- /D UEFI_C_SOURCE /D MDEPKG_NDEBUG /D NDEBUG /Ic:\edk\edk2\Acme\Library\ABSafeOpenProtocolLib  /Ic:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABSafeOpenProtocolLib\ABSafeOpenProtocolLib\DEBUG  /Ic:\edk\edk2\MdePkg  /Ic:\edk\edk2\MdePkg\Include  /Ic:\edk\edk2\MdePkg\Include\X64  /Ic:\edk\edk2\Acme  /Ic:\edk\edk2\Acme\Include  /Ic:\edk\edk2\Acme\Include\AB\UEFI  /Ic:\edk\edk2\Acme\Include\AB\fastgui  /Ic:\edk\edk2\Acme\Include\AB  /Ic:\edk\edk2\Acme\Include\IPP c:\edk\edk2\Acme\Library\ABSafeOpenProtocolLib\ABSafeOpenProtocolLib.c
    "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\x86_amd64\lib.exe" /NOLOGO /LTCG /OUT:c:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABMemDumpLib\ABMemDumpLib\OUTPUT\ABMemDumpLib.lib @c:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABMemDumpLib\ABMemDumpLib\OUTPUT\object_files.lst
    "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\x86_amd64\cl.exe" /Foc:\edk\Build\Acme\RELEASE_VS2008x86\X64\MdePkg\Library\UefiApplicationEntryPoint\UefiApplicationEntryPoint\OUTPUT\.\ /nologo /c /WX /GS- /X /W4 /Gs32768 /O1ib2s /GL- /Gy /FIAutoGen.h /EHs-c- /GR- /GF /X /Zc:wchar_t- /D UEFI_C_SOURCE /D MDEPKG_NDEBUG /D NDEBUG /Ic:\edk\edk2\MdePkg\Library\UefiApplicationEntryPoint  /Ic:\edk\Build\Acme\RELEASE_VS2008x86\X64\MdePkg\Library\UefiApplicationEntryPoint\UefiApplicationEntryPoint\DEBUG  /Ic:\edk\edk2\MdePkg  /Ic:\edk\edk2\MdePkg\Include  /Ic:\edk\edk2\MdePkg\Include\X64 c:\edk\edk2\MdePkg\Library\UefiApplicationEntryPoint\ApplicationEntryPoint.c
NMAKE : fatal error U1073: don't know how to make 'c:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABCPPSupportLib\ABCPPSupportLib\OUTPUT\ABCPPSupportLib.obj'
Stop.
    "C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\x86_amd64\cl.exe" /Foc:\edk\Build\Acme\RELEASE_VS2008x86\X64\MdePkg\Library\BaseIoLibIntrinsic\BaseIoLibIntrinsic\OUTPUT\.\ /nologo /c /WX /GS- /X /W4 /Gs32768 /O1ib2s /GL- /Gy /FIAutoGen.h /EHs-c- /GR- /GF /X /Zc:wchar_t- /D UEFI_C_SOURCE /D MDEPKG_NDEBUG /D NDEBUG /Ic:\edk\edk2\MdePkg\Library\BaseIoLibIntrinsic\X64  /Ic:\edk\edk2\MdePkg\Library\BaseIoLibIntrinsic  /Ic:\edk\Build\Acme\RELEASE_VS2008x86\X64\MdePkg\Library\BaseIoLibIntrinsic\BaseIoLibIntrinsic\DEBUG  /Ic:\edk\edk2\MdePkg  /Ic:\edk\edk2\MdePkg\Include  /Ic:\edk\edk2\MdePkg\Include\X64 c:\edk\edk2\MdePkg\Library\BaseIoLibIntrinsic\IoLibMmioBuffer.c c:\edk\edk2\MdePkg\Library\BaseIoLibIntrinsic\IoHighLevel.c c:\edk\edk2\MdePkg\Library\BaseIoLibIntrinsic\IoLibMsc.c c:\edk\edk2\MdePkg\Library\BaseIoLibIntrinsic\IoLib.c
ABSafeOpenProtocolLib.c
build.py...
 : error 7000: Failed to execute command
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\nmake.exe /nologo tbuild [c:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABCPPSupportLib\ABCPPSupportLib]
build.py...
 : error 7000: Failed to execute command
    C:\Program Files (x86)\Microsoft Visual Studio 9.0\Vc\bin\nmake.exe /nologo tbuild [c:\edk\Build\Acme\RELEASE_VS2008x86\X64\Acme\Library\ABMountedCPPEntryLib\ABMountedCPPEntryLib]
build.py...
 : error F002: Failed to build module
    c:\edk\edk2\Acme\Library\ABCPPSupportLib\ABCPPSupportLib.inf [X64, VS2008x86, RELEASE]
- Failed -
Build end time: 00:33:41, May.25 2020
Build total time: 00:00:04

Both of those that failed have:

[Packages]
 StdLib/StdLib.dec.

I'm not sure if that has something to do with it but the others built fine.   I looked for any differences in the .inf or .dec and .dsc but all looks fine.

There used to be a build-tools mailing list but it doesn't exist and could only find these new group/mailing lists.  Can someone help?   Is there a way to get more details on what it doesn't like?  Do I have to do something different now that the LIBC stuff is split up to their own folder?

TIA!!

Join devel@edk2.groups.io to automatically receive all group messages.