View previous topic :: View next topic |
Author |
Message |
crocket Guru
Joined: 29 Apr 2017 Posts: 558
|
Posted: Tue Jul 30, 2019 1:34 am Post subject: How can I compile aarch32 packages on aarch64 gentoo system? |
|
|
Does anyone know? |
|
Back to top |
|
|
Etal Veteran
Joined: 15 Jul 2005 Posts: 1931
|
Posted: Tue Jul 30, 2019 2:42 am Post subject: |
|
|
You can create a system inside a chroot (download stage3 tarball, bind mounts, etc., just like how you would do it when installing a new system, but without ever booting into it).
Or you can use crossdev, which will get you something like armv7a-unknown-linux-gnueabihf-emerge, which you you can use to build packages.
Assuming your AArch64 system is compatible with AArch32 (can run all the instructions), going the chroot way would be the easiest. |
|
Back to top |
|
|
crocket Guru
Joined: 29 Apr 2017 Posts: 558
|
Posted: Tue Jul 30, 2019 2:45 am Post subject: |
|
|
Etal wrote: | You can create a system inside a chroot (download stage3 tarball, bind mounts, etc., just like how you would do it when installing a new system, but without ever booting into it).
Or you can use crossdev, which will get you something like armv7a-unknown-linux-gnueabihf-emerge, which you you can use to build packages.
Assuming your AArch64 system is compatible with AArch32 (can run all the instructions), going the chroot way would be the easiest. |
How am I able to install x86 packages on x86_64 systems? Those packages involve neither chroot nor crossdev. |
|
Back to top |
|
|
Phoenix591 Guru
Joined: 17 Sep 2007 Posts: 487
|
Posted: Tue Jul 30, 2019 7:51 am Post subject: |
|
|
crocket wrote: |
How am I able to install x86 packages on x86_64 systems? Those packages involve neither chroot nor crossdev. |
Multilib, which requires special support in gcc and other important programs (eg, the -m32 flag to tell it to produce 32 bit output, which isn't present on aarch64) |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54325 Location: 56N 3W
|
Posted: Tue Jul 30, 2019 12:12 pm Post subject: |
|
|
crocket,
It depends on your hardware. On AArch64, the 32 bit instruction set is optional.
If your hardware lacks 32 bit support, your only options are cross compiling or a QEMU chroot.
Given a 32 bit instruction set, a 32 bit chroot works too, since the hardware can execute 32 bit instructions. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54325 Location: 56N 3W
|
Posted: Tue Jul 30, 2019 12:13 pm Post subject: |
|
|
Moved from Portage & Programming to Gentoo on ARM. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
crocket Guru
Joined: 29 Apr 2017 Posts: 558
|
Posted: Tue Jul 30, 2019 2:03 pm Post subject: |
|
|
NeddySeagoon wrote: | crocket,
It depends on your hardware. On AArch64, the 32 bit instruction set is optional.
If your hardware lacks 32 bit support, your only options are cross compiling or a QEMU chroot.
Given a 32 bit instruction set, a 32 bit chroot works too, since the hardware can execute 32 bit instructions. |
Do you mean I can just tack multilib eclass to media-libs/raspberrypi-userland? |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54325 Location: 56N 3W
|
Posted: Tue Jul 30, 2019 2:38 pm Post subject: |
|
|
crocket,
No. There is no multilib on arm64. Multilib requires on disk filesystem layout support.
Its common on amd64 but nobody does it on arm64.
You should be able to make a 32 bit chroot on a 64 bit raspberry pi and chroot into it. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
crocket Guru
Joined: 29 Apr 2017 Posts: 558
|
Posted: Tue Jul 30, 2019 9:56 pm Post subject: |
|
|
NeddySeagoon wrote: | crocket,
No. There is no multilib on arm64. Multilib requires on disk filesystem layout support.
Its common on amd64 but nobody does it on arm64.
You should be able to make a 32 bit chroot on a 64 bit raspberry pi and chroot into it. |
Or, crossdev |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54325 Location: 56N 3W
|
Posted: Tue Jul 30, 2019 10:27 pm Post subject: |
|
|
crocket,
Yes, crossdev is one way to get a cross toolchain. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
|