Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Hello Nick, Can you please configure your e-mail client to quote properly? This is quite difficult to follow the conversation. On 07/06/2017 11:56 PM, Nick Garnett wrote: Sent: Thursday, July 06, 2017 13:48 Sent: Thursday, July 06, 2017 12:26 From: Julien Grall [mailto:julien.gr...@arm.com] Sent: Tuesday, July 04, 2017 09:47 On 07/04/2017 05:42 PM, Nick Garnett wrote: I tried installing the tools with an ARM64 chroot also and had a similar issue. In that case, the package "crossbuild_essential_arm64" wouldn't install because it depended on a package that was not installable. I don't use crossbuild within the chroot. My chroot contains ARM64 binaries only and QEMU is used to run ARM64 binaries. In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platforms. My runes are usually: ./configure make -j install-tools This will install the tools in /usr/local/ I think the list of dependencies on the CrossCompiling page is still valid: https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling#Configuring_an_arm64_crossbuild_chroot [nickgarnett:170706-1225PDT] Julian, you state: In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platform. I assume you mean if I use crossbuild it would be "like compiling directly on an ARM platform". Correct? No, crossbuild would be building from an x86 host and target an ARM platform. Compiling directly on an ARM platform would be native build or use QEMU user-mode. What should I do (or not do), following the HOWTO in "https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling;? Should I use "multiarch"? [nickgarnett:170706-1345PDT] Following the HOWTO "https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling;, resulted in the following error in the "apt-get update" step: #created the chroot and fixed the chroot.d descriptor file (zesty-arm64-cross)root# apt-get install vim-tiny wget sudo less pkgbinarymangler #(zesty-arm64-cross)root# vi /etc/apt/sources.list # added ... #deb [arch=arm64] http://ports.ubuntu.com/ saucy main universe #Since this is a cross-build chroot Recommended and Suggested packages are largely unnecessary, # created /etc/apt/apt.conf.d/30norecommends containing: #APT::Install-Recommends "0"; #APT::Install-Suggests "0"; (zesty-arm64-cross)root# dpkg --add-architecture arm64 (zesty-arm64-cross)root# apt-get update Resulted in: Err:3 http://archive.ubuntu.com/ubuntu zesty/main arm64 Packages 404 Not Found [IP: 91.189.88.149 80] Ign:5 http://archive.ubuntu.com/ubuntu zesty/universe arm64 Packages Reading package lists... Done E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/zesty/main/binary-arm64/Packages 404 Not Found [IP: 91.189.88.149 80] E: Some index files failed to download. They have been ignored, or old ones used instead. I am assuming you were able to fix this give the configure below? [nickgarnett:170706-1555PDT] Got "configure: error: ./configure: line 6930: /usr/bin/python: cannot execute binary file: Exec format error is too old, minimum required version is 2.3" ./configure --host=aarch64-linux-gnu checking build system type... x86_64-unknown-linux-gn I am a bit confused, on a previous mail you mentioned you were using QEMU user-mode. But this looks like you are doing cross-build. Maybe I am lost because of the quoting. The error "exec format error" below seem to confirm you are mixing both. If you have a rootfs with only arm64 binaries, you could use qemu user-mode. As soon as you call chroot in you rootfs your environment will be like running on an ARM64 platform. You should never see the word x86_64 anymore. For crossbuild, I haven't done in a while and would need to brush up a bit before giving any help here. A good start would be: https://wiki.debian.org/CrossCompiling Let me know which way you want to use. Cheers, -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Sent: Thursday, July 06, 2017 13:48 Sent: Thursday, July 06, 2017 12:26 > From: Julien Grall [mailto:julien.gr...@arm.com] > Sent: Tuesday, July 04, 2017 09:47 > > On 07/04/2017 05:42 PM, Nick Garnett wrote: >> I tried installing the tools with an ARM64 chroot also and had a >> similar issue. In that case, the package "crossbuild_essential_arm64" >> wouldn't install because it depended on a package that was not installable. > > I don't use crossbuild within the chroot. My chroot contains ARM64 binaries > only and QEMU is used to run ARM64 binaries. In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platforms. My runes are usually: ./configure make -j install-tools This will install the tools in /usr/local/ I think the list of dependencies on the CrossCompiling page is still valid: https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling#Configuring_an_arm64_crossbuild_chroot [nickgarnett:170706-1225PDT] Julian, you state: In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platform. I assume you mean if I use crossbuild it would be "like compiling directly on an ARM platform". Correct? What should I do (or not do), following the HOWTO in "https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling;? Should I use "multiarch"? [nickgarnett:170706-1345PDT] Following the HOWTO "https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling;, resulted in the following error in the "apt-get update" step: #created the chroot and fixed the chroot.d descriptor file (zesty-arm64-cross)root# apt-get install vim-tiny wget sudo less pkgbinarymangler #(zesty-arm64-cross)root# vi /etc/apt/sources.list # added ... #deb [arch=arm64] http://ports.ubuntu.com/ saucy main universe #Since this is a cross-build chroot Recommended and Suggested packages are largely unnecessary, # created /etc/apt/apt.conf.d/30norecommends containing: #APT::Install-Recommends "0"; #APT::Install-Suggests "0"; (zesty-arm64-cross)root# dpkg --add-architecture arm64 (zesty-arm64-cross)root# apt-get update Resulted in: Err:3 http://archive.ubuntu.com/ubuntu zesty/main arm64 Packages 404 Not Found [IP: 91.189.88.149 80] Ign:5 http://archive.ubuntu.com/ubuntu zesty/universe arm64 Packages Reading package lists... Done E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/zesty/main/binary-arm64/Packages 404 Not Found [IP: 91.189.88.149 80] E: Some index files failed to download. They have been ignored, or old ones used instead. [nickgarnett:170706-1555PDT] Got "configure: error: ./configure: line 6930: /usr/bin/python: cannot execute binary file: Exec format error is too old, minimum required version is 2.3" ./configure --host=aarch64-linux-gnu checking build system type... x86_64-unknown-linux-gnu checking host system type... aarch64-unknown-linux-gnu Will build the following subsystems: xen tools docs configure: creating ./config.status config.status: creating config/Toplevel.mk config.status: creating config/Paths.mk === configuring in tools (/home/nick/xen-4.9.0/tools) configure: running /bin/bash ./configure --disable-option-checking '--prefix=/usr/local' '--host=aarch64-linux-gnu' 'host_alias=aarch64-linux-gnu' --cache-file=/dev/null --srcdir=. checking build system type... x86_64-unknown-linux-gnu checking host system type... aarch64-unknown-linux-gnu checking for aarch64-linux-gnu-gcc... aarch64-linux-gnu-gcc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... yes checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether aarch64-linux-gnu-gcc accepts -g... yes checking for aarch64-linux-gnu-gcc option to accept ISO C89... none needed checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking for aarch64-linux-gnu-gcc... (cached) aarch64-linux-gnu-gcc checking whether we are using the GNU C compiler...
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Sent: Thursday, July 06, 2017 12:26 > From: Julien Grall [mailto:julien.gr...@arm.com] > Sent: Tuesday, July 04, 2017 09:47 > > On 07/04/2017 05:42 PM, Nick Garnett wrote: >> I tried installing the tools with an ARM64 chroot also and had a >> similar issue. In that case, the package "crossbuild_essential_arm64" >> wouldn't install because it depended on a package that was not installable. > > I don't use crossbuild within the chroot. My chroot contains ARM64 binaries > only and QEMU is used to run ARM64 binaries. In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platforms. My runes are usually: ./configure make -j install-tools This will install the tools in /usr/local/ I think the list of dependencies on the CrossCompiling page is still valid: https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling#Configuring_an_arm64_crossbuild_chroot [nickgarnett:170706-1225PDT] Julian, you state: In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platform. I assume you mean if I use crossbuild it would be "like compiling directly on an ARM platform". Correct? What should I do (or not do), following the HOWTO in "https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling;? Should I use "multiarch"? [nickgarnett:170706-1345PDT] Following the HOWTO "https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling;, resulted in the following error in the "apt-get update" step: #created the chroot and fixed the chroot.d descriptor file (zesty-arm64-cross)root# apt-get install vim-tiny wget sudo less pkgbinarymangler #(zesty-arm64-cross)root# vi /etc/apt/sources.list # added ... #deb [arch=arm64] http://ports.ubuntu.com/ saucy main universe #Since this is a cross-build chroot Recommended and Suggested packages are largely unnecessary, # created /etc/apt/apt.conf.d/30norecommends containing: #APT::Install-Recommends "0"; #APT::Install-Suggests "0"; (zesty-arm64-cross)root# dpkg --add-architecture arm64 (zesty-arm64-cross)root# apt-get update Resulted in: Err:3 http://archive.ubuntu.com/ubuntu zesty/main arm64 Packages 404 Not Found [IP: 91.189.88.149 80] Ign:5 http://archive.ubuntu.com/ubuntu zesty/universe arm64 Packages Reading package lists... Done E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/zesty/main/binary-arm64/Packages 404 Not Found [IP: 91.189.88.149 80] E: Some index files failed to download. They have been ignored, or old ones used instead. ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Sent: Wednesday, July 05, 2017 01:15 > From: Julien Grall [mailto:julien.gr...@arm.com] > Sent: Tuesday, July 04, 2017 09:47 > > On 07/04/2017 05:42 PM, Nick Garnett wrote: >> I tried installing the tools with an ARM64 chroot also and had a >> similar issue. In that case, the package "crossbuild_essential_arm64" >> wouldn't install because it depended on a package that was not installable. > > I don't use crossbuild within the chroot. My chroot contains ARM64 binaries > only and QEMU is used to run ARM64 binaries. In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platforms. My runes are usually: ./configure make -j install-tools This will install the tools in /usr/local/ I think the list of dependencies on the CrossCompiling page is still valid: https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling#Configuring_an_arm64_crossbuild_chroot [nickgarnett:170706-1225PDT] Julian, you state: In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platform. I assume you mean if I use crossbuild it would be "like compiling directly on an ARM platform". Correct? What should I do (or not do), following the HOWTO in "https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling;? Should I use "multiarch"? Regards, Nick Garnett ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Hi, On 05/07/17 14:44, Nick Garnett wrote: Original message From: Julien GrallDate: 7/5/17 01:15 (GMT-08:00) To: Nick Garnett , 'xen-devel' , 'Wei Liu' , 'Stefano Stabellini' Subject: Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset Hello Nick, On 07/04/2017 10:59 PM, Nick Garnett wrote: From: Julien Grall [mailto:julien.gr...@arm.com] Sent: Tuesday, July 04, 2017 09:47 On 07/04/2017 05:42 PM, Nick Garnett wrote: I tried installing the tools with an ARM64 chroot also and had a similar issue. In that case, the package "crossbuild_essential_arm64" wouldn't install because it depended on a package that was not installable. I don't use crossbuild within the chroot. My chroot contains ARM64 binaries only and QEMU is used to run ARM64 binaries. In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platforms. My runes are usually: ./configure make -j install-tools This will install the tools in /usr/local/ I think the list of dependencies on the CrossCompiling page is still valid: https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling#Configuring_an_arm64_crossbuild_chroot Which distributions are you targeting? [nickgarnett 1707041454PDT] I am using Xen 4.9.0 I meant Linux Distribution. E.g is it Debian, Fedora, Yocto? [nickgarnett] Ubuntu Zesty I think the list of packages mentioned in the CrossCompiling wikipage is still valid for ARM64. You can follow the instructions to install missing packages and then execute the runes I sent in my previous e-mail. Let me know if you need more help. Cheers, -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Original message From: Julien GrallDate: 7/5/17 01:15 (GMT-08:00) To: Nick Garnett , 'xen-devel' , 'Wei Liu' , 'Stefano Stabellini' Subject: Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset Hello Nick, On 07/04/2017 10:59 PM, Nick Garnett wrote: > From: Julien Grall [mailto:julien.gr...@arm.com] > Sent: Tuesday, July 04, 2017 09:47 > > On 07/04/2017 05:42 PM, Nick Garnett wrote: >> I tried installing the tools with an ARM64 chroot also and had a similar >> issue. In that case, the package >> "crossbuild_essential_arm64" wouldn't install because it depended on a >> package that was not installable. > > I don't use crossbuild within the chroot. My chroot contains ARM64 binaries > only and QEMU is used to run ARM64 binaries. In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platforms. My runes are usually: ./configure make -j install-tools This will install the tools in /usr/local/ I think the list of dependencies on the CrossCompiling page is still valid: https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling#Configuring_an_arm64_crossbuild_chroot > > Which distributions are you targeting? > > [nickgarnett 1707041454PDT] I am using Xen 4.9.0 I meant Linux Distribution. E.g is it Debian, Fedora, Yocto? [nickgarnett] Ubuntu Zesty ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Hello Nick, On 07/04/2017 10:59 PM, Nick Garnett wrote: From: Julien Grall [mailto:julien.gr...@arm.com] Sent: Tuesday, July 04, 2017 09:47 On 07/04/2017 05:42 PM, Nick Garnett wrote: I tried installing the tools with an ARM64 chroot also and had a similar issue. In that case, the package "crossbuild_essential_arm64" wouldn't install because it depended on a package that was not installable. I don't use crossbuild within the chroot. My chroot contains ARM64 binaries only and QEMU is used to run ARM64 binaries. In that case, you don't need to install crossbuild_essential_arm64. Compiling in that chroot is like compiling directly on an ARM platforms. My runes are usually: ./configure make -j install-tools This will install the tools in /usr/local/ I think the list of dependencies on the CrossCompiling page is still valid: https://wiki.xenproject.org/wiki/Xen_ARM_with_Virtualization_Extensions/CrossCompiling#Configuring_an_arm64_crossbuild_chroot Which distributions are you targeting? [nickgarnett 1707041454PDT] I am using Xen 4.9.0 I meant Linux Distribution. E.g is it Debian, Fedora, Yocto? Cheers, -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
From: Julien Grall [mailto:julien.gr...@arm.com] Sent: Tuesday, July 04, 2017 09:47 On 07/04/2017 05:42 PM, Nick Garnett wrote: > I tried installing the tools with an ARM64 chroot also and had a similar > issue. In that case, the package > "crossbuild_essential_arm64" wouldn't install because it depended on a > package that was not installable. I don't use crossbuild within the chroot. My chroot contains ARM64 binaries only and QEMU is used to run ARM64 binaries. Which distributions are you targeting? [nickgarnett 1707041454PDT] I am using Xen 4.9.0 ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Hello Nick, Please avoid top-posting and keep mailing list CCed. On 07/04/2017 05:42 PM, Nick Garnett wrote: I tried installing the tools with an ARM64 chroot also and had a similar issue. In that case, the package "crossbuild_essential_arm64" wouldn't install because it depended on a package that was not installable. I don't use crossbuild within the chroot. My chroot contains ARM64 binaries only and QEMU is used to run ARM64 binaries. Which distributions are you targeting? Cheers, -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
Hi, On 07/04/2017 03:41 PM, Wei Liu wrote: CC Julien and Stefano -- not sure if the wiki page should be updated I don't cross-compile the tools usually but either build on the target or using an ARM chroot (setup with qemu-debootstrap). Stefano seems to have updated the wiki page recently, maybe he is using it? On Mon, Jul 03, 2017 at 11:41:37AM -0700, Nick Garnett wrote: I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target. However, I can't build the Xen toolset. I am following the "Xen ARM with Virtualization Extensions/CrossCompiling" page, "Build arm64 tools" section. When I execute: "./configure --build=x86_64-unknown-linux-gnu --host=aarch64-linux-gnu", I get the following errors: checking for uuid_clear in -luuid... no checking uuid.h usability... no checking uuid.h presence... no checking for uuid.h... no configure: error: cannot find a valid uuid library configure: error: ./configure failed for tools I have installed uuid, uuid-dev uuid-runtime and uuidcdef, but continue to get the same error. >> If anyone has seen and resolved this issue, please provide details. Regards, Nick Garnett Zazzu Firmware Architect Cheers, -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
CC Julien and Stefano -- not sure if the wiki page should be updated On Mon, Jul 03, 2017 at 11:41:37AM -0700, Nick Garnett wrote: > I was able to cross-compile the hypervisor on an amd64 host for the aarch64 > target. However, I can't build the Xen toolset. > > I am following the "Xen ARM with Virtualization Extensions/CrossCompiling" > page, "Build arm64 tools" section. When I execute: > > "./configure --build=x86_64-unknown-linux-gnu --host=aarch64-linux-gnu", I > get the following errors: > > checking for uuid_clear in -luuid... no > checking uuid.h usability... no > checking uuid.h presence... no > checking for uuid.h... no > configure: error: cannot find a valid uuid library > configure: error: ./configure failed for tools > > I have installed uuid, uuid-dev uuid-runtime and uuidcdef, but continue to > get the same error. > > If anyone has seen and resolved this issue, please provide details. > > Regards, Nick Garnett > > Zazzu Firmware Architect > > > > > ___ > Xen-devel mailing list > Xen-devel@lists.xen.org > https://lists.xen.org/xen-devel ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
[Xen-devel] I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target ... However, I can't build the Xen toolset
I was able to cross-compile the hypervisor on an amd64 host for the aarch64 target. However, I can't build the Xen toolset. I am following the "Xen ARM with Virtualization Extensions/CrossCompiling" page, "Build arm64 tools" section. When I execute: "./configure --build=x86_64-unknown-linux-gnu --host=aarch64-linux-gnu", I get the following errors: checking for uuid_clear in -luuid... no checking uuid.h usability... no checking uuid.h presence... no checking for uuid.h... no configure: error: cannot find a valid uuid library configure: error: ./configure failed for tools I have installed uuid, uuid-dev uuid-runtime and uuidcdef, but continue to get the same error. If anyone has seen and resolved this issue, please provide details. Regards, Nick Garnett Zazzu Firmware Architect ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel