Thank you for your input. The Debian port in question seems to have been 
bootstrapped by cross compiling, but the later stages are mostly done with 
qemu-user chroots. So there's still hope that I can qemu-user all the way if my 
host is fast enough...

Have a nice day.

Sincerely

________________________________________
From: Andreas Baumann
Sent: Wednesday, April 28, 2021 21:57
To: Sijie Bu
Cc: Discussion regarding the porting of Arch Linux to non-x86_64 architectures
Subject: Re: Easier to cross-bootstrap or bootstrap with another distro?


> Reply-To: Andreas Baumann <[email protected]>
> In-Reply-To: 
> <by5pr14mb3669acc64af81801392f1f64da...@by5pr14mb3669.namprd14.prod.outlook.com>
>
> On Mon, Apr 26, 2021 at 09:00:04AM +0000, Sijie Bu via arch-ports wrote:
> > (This message was originally posted on arch-general and I was redirected by 
> > a member to this list.)
> >
> > Hello,
>
> Hi,
>
>
> > I am about to start working as an intern at CIP United, a company focusing 
> > on MIPS chips, and I will be bootstrapping Arch Linux onto the MIPS64r6 
> > architecture, in a fashion similar to Arch Linux ARM.
> >
> > I have checked the Arch Linux MIPS project, but it seems to be inactive for 
> > years now. I have checked ArchWiki's DeveloperWiki section, but it seems to 
> > lack guidelines or suggestions on bootstrapping Arch onto a new 
> > architecture. Therefore I have a few questions:
> > - Intuitively, I think I should cross-compile the packages of the "core" 
> > section (sans a few x64-specific packages) and build a bootable rootfs, but 
> > I was having some trouble finding how should I set makepkg to 
> > cross-compile. Do I just set up an Arch developer environment as usual, but 
> > substitute the toolchain with the cross ones?
>
> I did a "cross-compile" from x86_64 to i486 some time ago, you can maybe
> find some useful information in https://git.archlinux32.org/bootstrap32/.
>
> I can also recommend the oakensource's RISC-V port at
> https://github.com/oaken-source/parabola-cross-bootstrap
>
> Basically yes, you'll need a cross toolchain for MIPS, either from the AUR
> or use a cross-platorm distro like http://t2sde.org/ to bootstrap directly
> from MIPS (in qemu or so).
>
> > - Does adding a new architecture require modifications to the pacman source 
> > code? Or pacman itself should support new architectures? I have also tried 
> > looking at pacman source code, and it seems to not have hard-coded list of 
> > architectures, but I am not 100% sure about this (if I'll have to modify 
> > the source code of pacman, I will be emailing the pacman-dev mailing list 
> > regarding their policies on patches etc.).
>
> In theory pacman should be quite portable (it runs at least on x86_64, IA32,
> ARM 32-bit, AARCH64). So the typical 32-/64-bit issues should have been
> fixed.
>
> You will have to make pacman know about your new architecture (and
> eventually subarchitectures). See our fork of pacman on
> https://git.archlinux32.org/pacman/
> (basically auto-detection for SSE2, support for sub-architectures
> 'i486', 'i686', 'pentium4').
>
> Most work I expect in breaking cycles and dependencies in PKGBUILDs.
>
> >
> > Thank you for your time and have a nice day.
> > Sincerely
> > _______________________________________________
> > arch-ports mailing list
> > [email protected]
> > https://lists.archlinux.org/listinfo/arch-ports
>
> Happy porting, feel free to ask questions on IRC at #archinux-ports or 
> #archlinux32. :-)
>
> Cheers
>
> Andreas
>
> --
> Andreas Baumann
> Trottenstrasse 20
> CH-8037 Zuerich
> Telefon: +41(0)76/373 01 29
> E-mail: [email protected]
> Homepage: www.andreasbaumann.cc
>
>

On Thu, Apr 29, 2021 at 12:52:06AM +0000, Sijie Bu wrote:
> Hello,
>
> I do have a quick follow-up question. My friends who works for CIP United 
> told me that
> they've already got a full Debian port, and it can be run with either 
> qemu-system or
> qemu-user (unfortunately it seems actual hardware for MIPS64 R6 aren't 
> available yet,
> probably due to the global silicon shortage). So I'm wondering will it be 
> easier if
> I first compile pacman against Debian libraries, and use that to natively 
> bootstrap
> a stage1 image than using cross compiler for bootstrapping?

Hi,

You can in this case start right away to build a minimal Archlinux chroot
on Debian containing all essential packages (at least the C/C++ toolchain, base
packages and pacman and its dependencies). It's definitely easier to
do so, as you don't have to deal with cross-compilation issues in packages.

On the other hand running this in qemu might me unthinkable slow, without
ccache/distcc-ing the load to the native CPU, this will take forever.

> Thank you for your time and have a nice day.
>
> Sincerely

Cheers

Andreas

--
Andreas Baumann
Trottenstrasse 20
CH-8037 Zuerich
Telefon: +41(0)76/373 01 29
E-mail: [email protected]
Homepage: www.andreasbaumann.cc


_______________________________________________
arch-ports mailing list
[email protected]
https://lists.archlinux.org/listinfo/arch-ports

Reply via email to