Re: Future of 32-bit platforms (including i386)
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 27 Apr 2023 18:57:58 UTC
Robert Clausecker <fuz_at_fuz.su> wrote on Date: Thu, 27 Apr 2023 18:18:55 UTC : > I would very much appreciate if lib32 support stays in (or is completed > in the case of aarch64). Without it, FreeBSD becomes a lot less useful > as a well rounded development system as you can no longer test code for > 32 bit platforms. I also have a need for armv7 user space code in > particular as I participate in and maintain the FreeBSD port of a Forth > system written in armv7 assembly. Being able to run the same code you > run on a microcontroller on a hosted platform makes it a lot easier to > test and develop. What I do for armv7 on aarch64 is to install an armv7 world into a directory tree and chroot into that world. As I understand jails also work. One can install armv7 ports and such in the alternate world. But I do not use X11 or other such so my range of experience is limited and there could be issues that I just do not know about. > As for running 32 bit kernels, I do not really have an opinion. For reference, for some examples details , including some things not mentioned: # ls -Tld /usr/obj/DESTDIRs/main-CA7-*/ drwxr-xr-x 19 root wheel 22 Jul 14 13:17:19 2022 /usr/obj/DESTDIRs/main-CA7-chroot/ drwxr-xr-x 18 root wheel 21 Apr 25 01:50:22 2023 /usr/obj/DESTDIRs/main-CA7-poud-bulk_a/ drwxr-xr-x 18 root wheel 21 Apr 25 01:51:29 2023 /usr/obj/DESTDIRs/main-CA7-poud/ # more ~/do-chroot-main-CA7.sh #! /bin/sh mkdir -p /usr/obj/DESTDIRs/main-CA7-chroot/dev/ \ && mount -tdevfs devfs /usr/obj/DESTDIRs/main-CA7-chroot/dev/ \ && mkdir -p /usr/obj/DESTDIRs/main-CA7-chroot/usr/local/poudriere/data/packages/main-CA7-default/ \ && mount_nullfs /usr/local/poudriere/data/packages/main-CA7-default \ /usr/obj/DESTDIRs/main-CA7-chroot/usr/local/poudriere/data/packages/main-CA7-default/ \ && mkdir -p /usr/obj/DESTDIRs/main-CA7-chroot/usr/ports/ \ && mount_nullfs /usr/ports /usr/obj/DESTDIRs/main-CA7-chroot/usr/ports/ \ && env IN_CHROOT="main-CA7-chroot" chroot /usr/obj/DESTDIRs/main-CA7-chroot/ umount /usr/obj/DESTDIRs/main-CA7-chroot/usr/ports/ umount /usr/obj/DESTDIRs/main-CA7-chroot/usr/local/poudriere/data/packages/main-CA7-default/ umount /usr/obj/DESTDIRs/main-CA7-chroot/dev/ (IN_CHROOT is just a personal thing: not required.) # poudriere jail -l JAILNAME VERSION ARCH METHOD TIMESTAMP PATH main-CA53 14.0-CURRENT arm64.aarch64 null 2021-06-27 17:57:33 /usr/obj/DESTDIRs/main-CA53-poud main-CA7 14.0-CURRENT arm.armv7 null 2021-06-27 17:58:33 /usr/obj/DESTDIRs/main-CA7-poud main-CA7-bulk_a 14.0-CURRENT arm.armv7 null 2021-12-04 14:54:10 /usr/obj/DESTDIRs/main-CA7-poud-bulk_a main-CA72 14.0-CURRENT arm64.aarch64 null 2021-06-27 17:48:11 /usr/obj/DESTDIRs/main-CA72-poud main-CA72-bulk_a 14.0-CURRENT arm64.aarch64 null 2021-12-04 14:54:44 /usr/obj/DESTDIRs/main-CA72-poud-bulk_a main-CA78C 14.0-CURRENT arm64.aarch64 null 2023-04-26 18:55:46 /usr/obj/DESTDIRs/main-CA78C-poud main-CA78C-bulk_a 14.0-CURRENT arm64.aarch64 null 2023-04-26 18:56:06 /usr/obj/DESTDIRs/main-CA78C-poud-bulk_a I do the building of packages from ports without doing a chroot first. But /usr/obj/DESTDIRs/main-CA7-poud and /usr/obj/DESTDIRs/main-CA7-poud-bulk_a are again directorties with armv7 worlds installed, but with: installworld distrib-dirs distribution DB_FROM_SRC=1 as is appropriate for poudriere using the world. === Mark Millard marklmi at yahoo.com