> -----Original Message-----
> From: Leif Lindholm [mailto:leif.lindh...@linaro.org]
> Sent: Thursday, October 08, 2015 14:21
> To: Yehuda Yitschak
> Cc: edk2-devel@lists.01.org
> Subject: Re: Cross compiling EDK2 for Aarch64
> 
> On Thu, Oct 08, 2015 at 10:04:24AM +0000, Yehuda Yitschak wrote:
> > > > but when I try to compile using the "build" command the build
> > > > script uses the x86 compiler and naturally it fails
> > >
> > > Any particular reason why you skipped past the first half of the
> > > page to follow the instructions under the headline "The Hard Way"?
> >
> > 2 reasons.  I am unable to clone the uefi-tools git using "git clone
> git://git.linaro.org/uefi/uefi-tools.git".  I get this output
> >     Cloning into 'uefi-tools'...
> >     fatal: unable to connect to git.linaro.org:
> >     git.linaro.org[0: 54.247.55.40]: errno=Connection timed out maybe
> the
> > GIT moved, or I have some permission issues ?
> 
> Hmm, was one of our git mirrors temporarily down?
> I just tested cloning from that IP, and it  works from here now.
> 
> If you have some firewall issues, maybe you could try with the http protocol
> instead:
> git clone http://git.linaro.org/uefi/uefi-tools.git

http worked fine. I guess it's really firewall issues like you mentioned

> 
> > Second, I wanted to get a better understanding of the build process
> 
> Fair enough.
> I just found that bit tedious enough to hide it behind scripts :)
> 
> But one thing uefi-build.sh does is print the exact build command line before
> building each platform, so it could still be useful for this.
> 
> > > > I tried working around this by setting the environment variable
> > > > GCC48_BIN however then the build system tries to call "make" from
> > > > the path in GCC48_BIN which off course fails
> > >
> > > This doesn't make sense.
> > >
> > > Can you please provide some information on the actual steps you have
> > > attempted, and the exact error output that yielded,  in order for us
> > > to be able to help?
> > >
> > Following the "hard way" I perform these steps
> >     - git clone http://git.linaro.org/uefi/linaro-edk2.git
> >     - cd linaro-edk2
> >     - git checkout master
> >     - . edksetup.sh
> >     - make -C BaseTools
> > Up to this point everything is working fine
> >
> > When running
> >     "build -a ARM -b DEBUG -t GCC48 -p
> ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA5s.dsc -D
> EDK2_ARMVE_STANDALONE=1"
> > I get an error saying the dsc file doesn't exist.
> 
> Yeah, we've dropped that platform, so should probably not be using it in our
> command line example... My bad, I'll update wiki.
> 
> > I'm also interested in aarch64 so I changed the command to:
> >     " build -a AARCH64 -b DEBUG -t GCC48 -p
> >     ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-FVP-AArch64.dsc -
> D
> >     EDK2_ARMVE_STANDALONE=1"
> 
> Yes, when cross compiling you do need to point out which toolchain to use.
> In my case, for the GCC48 profile, since I have the toolchain on my PATH, I
> would do this by prepending
> GCC48_AARCH64_PREFIX=aarch64-linux-gnu-
> to the command line.

GCC48_AARCH64_PREFIX  is exactly what I was missing. Once I set it I managed to 
compile EDK2 correctly
Maybe it's worth adding to the wiki 

Thanks a lot for your help !

Yehuda

> 
> If it's not on your PATH, specify the full path (e.g.
> /usr/local/toolchains/linaro-aarch64/bin/aarch64-linux-gnu-).
> 
> > I don't have a aarch64 compiler installed properly using apt-get but I
> > tried that before and that also didn't solve the problem
> 
> As long as you have an aarch64 toolchain installed somehow...
> 
> Regards,
> 
> Leif
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to