From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=192.55.52.88; helo=mga01.intel.com; envelope-from=liming.gao@intel.com; receiver=edk2-devel@lists.01.org Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id A4FB2203B8CFB for ; Thu, 10 May 2018 17:36:23 -0700 (PDT) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 May 2018 17:36:23 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,387,1520924400"; d="scan'208";a="40334796" Received: from fmsmsx104.amr.corp.intel.com ([10.18.124.202]) by orsmga008.jf.intel.com with ESMTP; 10 May 2018 17:36:22 -0700 Received: from fmsmsx152.amr.corp.intel.com (10.18.125.5) by fmsmsx104.amr.corp.intel.com (10.18.124.202) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 10 May 2018 17:36:22 -0700 Received: from shsmsx152.ccr.corp.intel.com (10.239.6.52) by FMSMSX152.amr.corp.intel.com (10.18.125.5) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 10 May 2018 17:36:21 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.240]) by SHSMSX152.ccr.corp.intel.com ([169.254.6.6]) with mapi id 14.03.0319.002; Fri, 11 May 2018 08:36:20 +0800 From: "Gao, Liming" To: "Gao, Liming" , Laszlo Ersek , "apianti@aol.com" CC: "edk2-devel@lists.01.org" Thread-Topic: [edk2] Trying to build OVMF fails Thread-Index: AQHT6GQalTQ8srpAK0eYHCnY4fvU16Qog12AgACLynCAAJ+6oA== Date: Fri, 11 May 2018 00:36:19 +0000 Message-ID: <4A89E2EF3DFEDB4C8BFDE51014F606A14E227ED2@SHSMSX104.ccr.corp.intel.com> References: <1634a4575fc-1dd7-e1c8@webjas-vae180.srv.aolmail.net> <463855a2-2b5b-a636-fab7-59e82bae80a5@redhat.com> <4A89E2EF3DFEDB4C8BFDE51014F606A14E227DA4@SHSMSX104.ccr.corp.intel.com> In-Reply-To: <4A89E2EF3DFEDB4C8BFDE51014F606A14E227DA4@SHSMSX104.ccr.corp.intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-version: 11.0.200.100 dlp-reaction: no-action x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Subject: Re: Trying to build OVMF fails X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 May 2018 00:36:23 -0000 Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable On linux build failure, it may be related to the wrong config files.=20 Please type ". edksetup.sh --reconfig" to update config file, and try again= . > -----Original Message----- > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Ga= o, Liming > Sent: Thursday, May 10, 2018 11:07 PM > To: Laszlo Ersek ; apianti@aol.com > Cc: edk2-devel@lists.01.org > Subject: Re: [edk2] Trying to build OVMF fails >=20 > VS build requires to install WINSDK. VS2013 requires WINSDK8. This path c= :\Program Files (x86)\Windows Kits\8.0\bin\x64\rc.exe is > from the installed WINSDK8. > When you installs visual studio, you can select winsdk and install it tog= ether VS compiler. >=20 > > -----Original Message----- > > From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of = Laszlo Ersek > > Sent: Thursday, May 10, 2018 10:43 PM > > To: apianti@aol.com > > Cc: edk2-devel@lists.01.org > > Subject: Re: [edk2] Trying to build OVMF fails > > > > On 05/10/18 15:37, apianti@aol.com wrote: > > > I am having a problem building OVMF to use as firmware for QEMU to te= st EFI binaries. I can only build the X64 arch of OVMF in > linux. > > In windows both IA32, IA32/X64, and X64 all fail with some variation of= this error: > > > > > > > > > > > > > > > > > > "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Vc\bin\x= 86_amd64\cl.exe" > > > /Fod:\development\edk2\Build\OvmfX64\RELEASE_VS2013x86\X64\MdeModulePkg\B= us\Pci\EhciDxe\EhciDxe\OUTPUT\.\EhciUrb.obj > > /nologo /c /WX /GS- /W4 /Gs32768 /D UNICODE /O1b2s /GL /Gy /FIAutoGen.h= /EHs-c- /GR- /GF /Gw /D MDEPKG_NDEBUG /D > > DISABLE_NEW_DEPRECATED_INTERFACES /Id:\development\edk2\MdeModulePkg\Bu= s\Pci\EhciDxe > > /Id:\development\edk2\Build\OvmfX64\RELEASE_VS2013x86\X64\MdeModulePkg\= Bus\Pci\EhciDxe\EhciDxe\DEBUG > > /Id:\development\edk2\MdePkg /Id:\development\edk2\MdePkg\Include /Id= :\development\edk2\MdePkg\Include\X64 > > /Id:\development\edk2\MdeModulePkg /Id:\development\edk2\MdeModulePkg\= Include > > d:\development\edk2\MdeModulePkg\Bus\Pci\EhciDxe\EhciUrb.c > > > 'c:\Program' is not recognized as an internal or external command, > > > operable program or batch file. > > > NMAKE : fatal error U1077: '"c:\Program Files (x86)\Windows Kits\8.0\= bin\x64\rc.exe' : return code '0x1' > > > Stop. > > > > Sorry, I can't comment on the VS toolchains (I don't use them). > > > > > And in linux IA32 and IA32/X64 fail with some varation of this error: > > > > > > > > > > > > "GenFw" -e DXE_DRIVER -o > > > /home/development/Desktop/edk2/Build/OvmfIa32/RELEASE_GCC5/IA32/MdeModule= Pkg/Universal/FaultTolerantWriteDxe/FaultTole > > rantWriteDxe/DEBUG/FaultTolerantWriteDxe.efi > > > /home/development/Desktop/edk2/Build/OvmfIa32/RELEASE_GCC5/IA32/MdeModule= Pkg/Universal/FaultTolerantWriteDxe/FaultTole > > rantWriteDxe/DEBUG/FaultTolerantWriteDxe.dll > > > GenFw: ERROR 3000: Invalid > > > > > > /home/development/Desktop/edk2/Build/OvmfIa32/RELEASE_GCC5/IA32/MdeModule= Pkg/Universal/FaultTolerantWriteDxe/FaultTole > > rantWriteDxe/DEBUG/FaultTolerantWriteDxe.dll unsupported ELF EM_386 rel= ocation 0xa. > > > GenFw: ERROR 3000: Invalid > > > > > > /home/development/Desktop/edk2/Build/OvmfIa32/RELEASE_GCC5/IA32/MdeModule= Pkg/Universal/FaultTolerantWriteDxe/FaultTole > > rantWriteDxe/DEBUG/FaultTolerantWriteDxe.dll unsupported ELF EM_386 rel= ocation 0x9. > > > > Interesting; what gcc version are you using with the GCC5 toolchain? > > I've just built OVMF like this: > > > > $ build \ > > -a IA32 \ > > -p OvmfPkg/OvmfPkgIa32.dsc \ > > -D SMM_REQUIRE \ > > -D SECURE_BOOT_ENABLE \ > > -t GCC5 \ > > -n 4 \ > > -b RELEASE \ > > -D HTTP_BOOT_ENABLE \ > > --cmd-len=3D65536 \ > > --hash > > > > with an up-to-date Fedora 28 install: > > - gcc (GCC) 8.1.1 20180502 (Red Hat 8.1.1-1) > > - binutils-2.29.1-23.fc28.x86_64 > > > > > How can I get the IA32 build working? Also I see ARM and AARCH64 OVMF= images in packages, how are these being built? I get that > > the architectures are unsupported. > > > > Do you mean that "distro packages are unsupported by upstream edk2"? > > Edk2 does support ARM and AARCH64. > > > > It is true that the OvmfPkg DSC files target only IA32, IA32X64, and > > X64, but the ArmVirtPkg DSC files target ARM and AARCH64 QEMU and Xen > > virtual machines. You can build ArmVirtPkg platforms with > > cross-compilers from x86_64, or natively on AARCH64 at the least (I've > > never tried native building on ARM). > > > > Thanks > > Laszlo > > _______________________________________________ > > edk2-devel mailing list > > edk2-devel@lists.01.org > > https://lists.01.org/mailman/listinfo/edk2-devel > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.01.org > https://lists.01.org/mailman/listinfo/edk2-devel