Sorry for mistake. now I set .code64 and I have two errors ------ Building ... /Users/Sergey/src/edk2/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib.inf [X64] /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:37:no such instruction: `retfq' /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:21:indirect call without `*' make: *** [/Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.obj] Error 1
------ First one mean that ; is not a comment for clang. It requires // Second mistake callq %r9 May be calls *%r9 ? On 16.01.2013, at 22:06, Isakov Sergey wrote: > Thank Andrew for the quick reply but I saw this as well as all your other > patches. > The only questionable is > … > Ops. rev14058 > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:37:no > such instruction: `retfq' > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:13:bad > register name `%rcx' > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:14:bad > register name `%rdx' > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:15:bad > register name `%r8' > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:16:bad > register name `%rax' > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:17:bad > register name `%r8)' > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:18:bad > register name `%rax' > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:19:bad > register name `%r9' > /Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.iii:20:bad > register name `%r9' > make: *** > [/Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/Library/LoadLinuxLib/LoadLinuxLib/OUTPUT/X64/JumpToKernel.obj] > Error 1 > > > On 16.01.2013, at 21:36, Andrew Fish wrote: > >> >> On Jan 16, 2013, at 9:04 AM, Isakov Sergey <isakov...@bk.ru> wrote: >> >>> Andrew, >>> I can't compile OvmfPkg with XCLANG (OSX 10.7.5, Xcode 4.4.1 + CLT 4.5.2) >>> --------------- >>> Building ... /Users/Sergey/src/edk2/OvmfPkg/AcpiTables/AcpiTables.inf [X64] >>> ld: warning: -macosx_version_min not specificed, assuming 10.6 >>> Undefined symbols for architecture x86_64: >>> "_main", referenced from: >>> -u command line option >>> ld: symbol(s) not found for inferred architecture x86_64 >>> make: *** >>> [/Users/Sergey/src/edk2/Build/OvmfX64/DEBUG_XCLANG/X64/OvmfPkg/AcpiTables/AcpiTables/OUTPUT/Facs.acpi] >>> Error 1 >>> >>> --------------- >>> What is wrong? It works fine with GCC47. >>> >> >> The ACPI support in the XCLANG has not been updated in a while. I posed >> info on how to change the Conf/build_rule.txt and Conf/tools_def.txt to fix >> this issue yesterday. >> >> The following changes fix 3 different bugs with ACPI support. You want to >> add the changes with < to you Conf/*.txt files. After the changes the ACPI >> tables should compile. >> >> edk2TOT>diff Conf/build_rule.txt BaseTools/Conf/build_rule.template >> 364,369d363 >> < <Command.XCODE> >> < Trim --asl-file -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i -i >> $(INC_LIST) ${src} >> < "$(ASLPP)" $(ASLPP_FLAGS) $(INC) -I${s_path} >> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i > >> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii >> < Trim --source-code -l -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iiii >> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii >> < "$(ASL)" $(ASL_FLAGS) $(ASL_OUTFLAGS)${dst} >> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iiii >> < >> >> edk2TOT>diff Conf/tools_def.txt BaseTools/Conf/tools_def.template >> 4621c4621 >> < *_XCLANG_*_ASLDLINK_FLAGS = -e _ReferenceAcpiTable -preload -segalign >> 0x20 -pie -seg1addr 0x240 -read_only_relocs suppress -map >> $(DEST_DIR_DEBUG)/$(BASE_NAME).map >> --- >> > *_XCLANG_*_ASLDLINK_FLAGS = -e _main -preload -segalign 0x20 -pie >> > -seg1addr 0x240 -read_only_relocs suppress -map >> > $(DEST_DIR_DEBUG)/$(BASE_NAME).map >> 4624d4623 >> < *_XCLANG_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) >> >> Thanks, >> >> Andrew Fish >> >> <Re: [edk2] difficulties getting started with EDK2 Development.eml> >> >>> On 16.01.2013, at 3:16, Andrew Fish wrote: >>> >>>> Piker, >>>> >>>> If you integrate my patches from the mailing list today and update your >>>> Conf/build_rule.txt and Conf/tools_def.txt you should be able to build the >>>> OvmfPkg on Mac OS X with Xcode. I don't currently have a copy of qemu >>>> installed so I did not try and run it. >>>> >>>> I will check in the updated .template files into the BaseTools project and >>>> it will sync with edk2 project at some point in the future. >>>> >>>> Seems like the ACPI build support has rotted out a bit and needs fixing. >>>> >>>> Andrew Fish >>>> >>>> edk2TOT>diff Conf/build_rule.txt BaseTools/Conf/build_rule.template >>>> 364,369d363 >>>> < <Command.XCODE> >>>> < Trim --asl-file -o $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i -i >>>> $(INC_LIST) ${src} >>>> < "$(ASLPP)" $(ASLPP_FLAGS) $(INC) -I${s_path} >>>> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.i > >>>> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii >>>> < Trim --source-code -l -o >>>> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iiii >>>> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iii >>>> < "$(ASL)" $(ASL_FLAGS) $(ASL_OUTFLAGS)${dst} >>>> $(OUTPUT_DIR)(+)${s_dir}(+)${s_base}.iiii >>>> < >>>> >>>> edk2TOT>diff Conf/tools_def.txt BaseTools/Conf/tools_def.template >>>> 4621c4621 >>>> < *_XCLANG_*_ASLDLINK_FLAGS = -e _ReferenceAcpiTable -preload -segalign >>>> 0x20 -pie -seg1addr 0x240 -read_only_relocs suppress -map >>>> $(DEST_DIR_DEBUG)/$(BASE_NAME).map >>>> --- >>>> > *_XCLANG_*_ASLDLINK_FLAGS = -e _main -preload -segalign 0x20 -pie >>>> > -seg1addr 0x240 -read_only_relocs suppress -map >>>> > $(DEST_DIR_DEBUG)/$(BASE_NAME).map >>>> 4624d4623 >>>> < *_XCLANG_*_ASL_OUTFLAGS = DEF(IASL_OUTFLAGS) >>>> >>>> >>>> >>>> >>>> On Jan 15, 2013, at 5:39 AM, Piker Alpha <pikeral...@yahoo.com> wrote: >>>> >>>>> I would like to add my $0.02 >>>>> >>>>> Now. I don't want to offend anyone here, nor their hard work, but I use >>>>> OS X and that platform is even more behind. I was stunned to find out >>>>> that while Apple is using EFI for years, one cannot even compile stuff >>>>> properly. >>>>> >>>>> I presume that Apple is using Windows in a virtual machine, or use >>>>> BootCamp for their development. But in any event. This should change, >>>>> because for someone like me, living in a non-windows world – using Linux >>>>> since age 7 and OS X since 2007 – this is total madness. Won't ever use >>>>> Windows. Not even in a virtual machine. >>>>> >>>>> Note: Anything expressed here is my own personal view and not that of my >>>>> employer. >>>>> >>>>> Regards, >>>>> >>>>> Pike >>>>> >>>>> Van: Mauro Faccenda <facce...@gmail.com> >>>>> Aan: edk2-devel@lists.sourceforge.net >>>>> Verzonden: dinsdag 15 januari 13:40 2013 >>>>> Onderwerp: Re: [edk2] difficulties getting started with EDK2 Development >>>>> >>>>> Hi Космынин, >>>>> >>>>> Thanks for your answer. I've noticed that the whole environment is on >>>>> a 'unstable' state and I was about to send a new message reporting the >>>>> a problem I am having when I call gethostbyname() (I guess it is the >>>>> same you mentioned with the GetHostByDns.efi) it makes qemu (with a >>>>> DEBUG enabled OVMF) hangs with some messages, and i still couldn't >>>>> find a workaround. But it seems it is a known problem. >>>>> >>>>> You mentioned that Linux isn't a stable platform for development, it >>>>> should be my preferred platform (licencing issues), but we can also >>>>> use any other. What would you (or anyone else) recommend? >>>>> >>>>> Regards, >>>>> >>>>> Mauro >>>>> >>>>> On Tue, Jan 15, 2013 at 5:18 AM, Космынин Олег Олегович >>>>> <okosmy...@kraftway.ru> wrote: >>>>> > Sadly, Linux is not a platform for stable development, there are at >>>>> > least 2 bugs we found in toolchain (gcc46), one is critical, i reported >>>>> > it but no answers. >>>>> > One bug with debug sections (check your log for: cannot fill debug link >>>>> > section) - it will stop DEBUG() macro from working, and another bug >>>>> > simply corrupt pointer in some cases (try to run GetHostByDns.efi and >>>>> > it will ASSERT). gcc45 & gcc44 not work at all on my setup (ubuntu >>>>> > 12.10, latest svn rev). >>>>> > >>>>> > Errors in StdLib you mentioned really exist, can't comment on your main >>>>> > ( IN int Argc, IN char **Argv ) issue. >>>>> > >>>>> > Overall, after 2.5 months of studying/developing for UEFI >>>>> > implementation from Intel I got impression it is in pre-alpha stage and >>>>> > you should expect lots of bugs. >>>>> > >>>>> > Good luck in your work >>>>> > >>>>> > ________________________________________ >>>>> > From: Mauro Faccenda [facce...@gmail.com] >>>>> > Sent: 11 January 2013 18:24 >>>>> > To: edk2-devel@lists.sourceforge.net >>>>> > Subject: [edk2] difficulties getting started with EDK2 Development >>>>> > >>>>> > Hi all, >>>>> > >>>>> > I am trying to get started with EDK2 development and I'd like to >>>>> > report some difficulties I had and am having. >>>>> > >>>>> > If any of you can point to some way to fix or even better way of doing >>>>> > anything, I'd appreciate. >>>>> > >>>>> > I am willing to use a plain Ubuntu 12.04 64bits as development >>>>> > platform as it comes with GCC 4.6 which seems to be well supported by >>>>> > the EDK2 and BaseTools. >>>>> > >>>>> > But here comes to me the first question: which (if any) are the >>>>> > recommended (default) platform for development? I guess it is using >>>>> > Windows with VS since the configuration comes with all parameters set >>>>> > to use it. But I'd like to know If there is any 'better supported' >>>>> > Linux platform (distro, distro version+gcc version). >>>>> > >>>>> > The Project Wiki mentions Ubuntu 9.10, 10.10 and 10.04, and GCC 4.4, >>>>> > but doesn't recommend any. >>>>> > >>>>> > For instance, I followed this documentation: >>>>> > http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=Using_EDK_II_with_Native_GCC_4.4 >>>>> > >>>>> > Moving on, as I want to play with network connections, I built my own >>>>> > OVMF with the Intel's E1000 Network drivers successfully using the >>>>> > sources from EDK2 trunk. >>>>> > >>>>> > I already could run qemu with network support (using tap + bridge with >>>>> > host physical interface) and use ping.efi (from the EDK2 Toolkit) >>>>> > against devices on my network, also no problems besides the latency >>>>> > being a bit high (>400ms, from the host I get less than 1ms). >>>>> > >>>>> > Then I started building some applications to test running in the >>>>> > environment. I've built the MdeModulePkg and could run some of them. >>>>> > But when I tried to build AppPkg I got the following error: >>>>> > $ build -t GCC46 -a X64 -p AppPkg/AppPkg.dsc >>>>> > [...] >>>>> > edk2/StdLib/LibC/Containers/Queues/Fifo.c:508:27: error: assignment >>>>> > from incompatible pointer type [-Werror] >>>>> > cc1: all warnings being treated as errors >>>>> > >>>>> > As it seems to be a warning promoted to an error, I manually ran the >>>>> > same gcc command removing the -Werror parameter and it compiled >>>>> > successfully. >>>>> > >>>>> > Is this a bug? Should I report? >>>>> > >>>>> > Then I ran the build command again, which brought another error: >>>>> > >>>>> > edk2/StdLib/LibC/Uefi/InteractiveIO/IIOutilities.c:269:1: error: >>>>> > conflicting types for ‘IIO_CursorDelta’ >>>>> > edk2/StdLib/LibC/Uefi/InteractiveIO/IIOutilities.h:122:1: note: >>>>> > previous declaration of ‘IIO_CursorDelta’ was here >>>>> > >>>>> > I opened both files looking for the definition of IIO_CursorDelta and >>>>> > in .h file I got: >>>>> > -- >>>>> > int >>>>> > EFIAPI >>>>> > IIO_CursorDelta ( >>>>> > cIIO *This, >>>>> > CURSOR_XY *StartXY, >>>>> > CURSOR_XY *EndXY >>>>> > ); >>>>> > -- >>>>> > while in the .c I got: >>>>> > -- >>>>> > UINT32 >>>>> > EFIAPI >>>>> > IIO_CursorDelta ( >>>>> > cIIO *This, >>>>> > CURSOR_XY *StartXY, >>>>> > CURSOR_XY *EndXY >>>>> > ) [...] >>>>> > -- >>>>> > >>>>> > So I changed the .h from int to UINT32 and ran the build again. This >>>>> > time with success. Should I report this? >>>>> > >>>>> > After that, I started to play with AppPkg/Applications/Main/Main.c, >>>>> > trying to poke around to see what I can or can't do and got something >>>>> > strange. I've changed the Main.c to just print the Argc value: >>>>> > -- >>>>> > #include <stdio.h> >>>>> > int >>>>> > EFIAPI >>>>> > main ( >>>>> > IN int Argc, >>>>> > IN char **Argv >>>>> > ) >>>>> > { >>>>> > printf("\nArgc=%d\n", Argc); >>>>> > return 0; >>>>> > } >>>>> > -- >>>>> > And whenever I run it on UEFI Shell (using qemu), I always get really >>>>> > big values (> 37000000) no matter with how many parameter I run and if >>>>> > I run with the same parameter multiple times, the value sometimes >>>>> > changes, as you can see on the image below: >>>>> > >>>>> > http://s1.postimage.org/dxeg7ahdr/argc.png >>>>> > >>>>> > This isn't exactly a problem, since I still can successfully run >>>>> > normal code but I'd like to know if am I doing something stupid, if >>>>> > this is some kind of bug or if it is a side effect of something I >>>>> > couldn't see yet. >>>>> > >>>>> > Any tips or clarifications will be really appreciated. >>>>> > >>>>> > Anyway, thanks for the good job you all have been doing on this >>>>> > project. =) >>>>> > >>>>> > Mauro Faccenda >>>>> > >>>>> > ------------------------------------------------------------------------------ >>>>> > Master HTML5, CSS3, ASP.NET, MVC, AJAX, Knockout.js, Web API and >>>>> > much more. Get web development skills now with LearnDevNow - >>>>> > 350+ hours of step-by-step video tutorials by Microsoft MVPs and >>>>> > experts. >>>>> > SALE $99.99 this month only -- learn more at: >>>>> > http://p.sf.net/sfu/learnmore_122812 >>>>> > _______________________________________________ >>>>> > edk2-devel mailing list >>>>> > edk2-devel@lists.sourceforge.net >>>>> > https://lists.sourceforge.net/lists/listinfo/edk2-devel >>>>> > >>>>> > ------------------------------------------------------------------------------ >>>>> > Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS >>>>> > and more. Get SQL Server skills now (including 2012) with LearnDevNow - >>>>> > 200+ hours of step-by-step video tutorials by Microsoft MVPs and >>>>> > experts. >>>>> > SALE $99.99 this month only - learn more at: >>>>> > http://p.sf.net/sfu/learnmore_122512 >>>>> > _______________________________________________ >>>>> > edk2-devel mailing list >>>>> > edk2-devel@lists.sourceforge.net >>>>> > https://lists.sourceforge.net/lists/listinfo/edk2-devel >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS >>>>> and more. Get SQL Server skills now (including 2012) with LearnDevNow - >>>>> 200+ hours of step-by-step video tutorials by Microsoft MVPs and experts. >>>>> SALE $99.99 this month only - learn more at: >>>>> http://p.sf.net/sfu/learnmore_122512 >>>>> _______________________________________________ >>>>> edk2-devel mailing list >>>>> edk2-devel@lists.sourceforge.net >>>>> https://lists.sourceforge.net/lists/listinfo/edk2-devel >>>>> >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS >>>>> and more. Get SQL Server skills now (including 2012) with LearnDevNow - >>>>> 200+ hours of step-by-step video tutorials by Microsoft MVPs and experts. >>>>> SALE $99.99 this month only - learn more at: >>>>> http://p.sf.net/sfu/learnmore_122512_______________________________________________ >>>>> edk2-devel mailing list >>>>> edk2-devel@lists.sourceforge.net >>>>> https://lists.sourceforge.net/lists/listinfo/edk2-devel >>>> >>>> ------------------------------------------------------------------------------ >>>> Master SQL Server Development, Administration, T-SQL, SSAS, SSIS, SSRS >>>> and more. Get SQL Server skills now (including 2012) with LearnDevNow - >>>> 200+ hours of step-by-step video tutorials by Microsoft MVPs and experts. >>>> SALE $99.99 this month only - learn more at: >>>> http://p.sf.net/sfu/learnmore_122512_______________________________________________ >>>> edk2-devel mailing list >>>> edk2-devel@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/edk2-devel >>> >>> ------------------------------------------------------------------------------ >>> Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery >>> and much more. Keep your Java skills current with LearnJavaNow - >>> 200+ hours of step-by-step video tutorials by Java experts. >>> SALE $49.99 this month only -- learn more at: >>> http://p.sf.net/sfu/learnmore_122612 >>> _______________________________________________ >>> edk2-devel mailing list >>> edk2-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/edk2-devel >> >> ------------------------------------------------------------------------------ >> Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery >> and much more. Keep your Java skills current with LearnJavaNow - >> 200+ hours of step-by-step video tutorials by Java experts. >> SALE $49.99 this month only -- learn more at: >> http://p.sf.net/sfu/learnmore_122612 >> _______________________________________________ >> edk2-devel mailing list >> edk2-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/edk2-devel > > ------------------------------------------------------------------------------ > Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery > and much more. Keep your Java skills current with LearnJavaNow - > 200+ hours of step-by-step video tutorials by Java experts. > SALE $49.99 this month only -- learn more at: > http://p.sf.net/sfu/learnmore_122612 > _______________________________________________ > edk2-devel mailing list > edk2-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/edk2-devel
------------------------------------------------------------------------------ Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery and much more. Keep your Java skills current with LearnJavaNow - 200+ hours of step-by-step video tutorials by Java experts. SALE $49.99 this month only -- learn more at: http://p.sf.net/sfu/learnmore_122612
_______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel