Slackware porting to arm[v5/v7/v8], ppc[32be/64be/64le], mips[32eb/32el/64el], riscv64, s390x
Hello all!
At the following link you can find the Slackware porting to ARM, PowerPC, MIPS, RISC-V, and S/390x: https://bonslack.bonnix.org/ I know that ARMv7 and AArch64 have already an official porting by MoZes, but I started the porting in 2016 (when the official porting was not yet started) and anyway it is still useful for other platform porting to understand and solve the issues. All listed platforms were ported to Slackware 14.2 (with riscv64 exception, since the provided build tools [binutils/gcc/glibc] do not have support for RISC-V, too new architecture...) and Slackware-current. S/390x (64bit) was just started, so not so many packages actually available. For ARMv5 (without FPU), the Slackware 14.2 was rebuilt from scratch to remove any reference to old deprecated instructions (swp, etc.). Since I have many system running on ARMv5 CPU but the official -current porting switched to ARMv7 (HardFloat), I make the porting of -current also for ARMv5. The build system use the official slackware64 source tree, with [few] patches architecture-specific. There are 2 mains updates to the build scripts: 1. For packages that generate libraries, the addition of LIBDIRSUFFIX=${LIBDIRSUFFIX:-""} to the "else" or "*" branch. 2. For some packages, the system config.sub/config.guess are copied before launching "configure" script. The updates are fully-automated, with both patch files and a perl script that updates the build scripts were needed (you can find all the scripts under "scripts" directory of the source code). Any other porting (such as SPARC, SH4, OpenRisc, etc.) are possible and should be very easy with the automated-update perl script. I excluded S/390 (32 bits) because it has no support for rust, and so some -current packages (such as librsvg) could not have been built. Hoping it could be useful for someone! Luca |
Hi,
I didn't find it under "https://bonslack.bonnix.org/bonslack_mips64el-current/" mips64el iso |
this is great
|
Quote:
You have 2 options: 1. Use userspace qemu to install/populate the root file system (you can find qemu-mips64el-static here: https://bonslack.bonnix.org/bootstrap/qemu/ ), then copy it to target 2. Download another ISO (like https://cdimage.debian.org/debian-cd...s64el/iso-dvd/ ) and install slackware from there Luca |
Quote:
Thank you for your reply |
Quote:
|
I am greatly appreciative of the ARM port of Bonslack. I (personally) have no use for other ports at the present time. But, I can see the usefulness of them. This is a really interesting technical project. The ARM ports of Bonslack allow me to continue running Slackware on several different ARM devices (mainly Raspberry Pi 2B, but potentially an old Chromebook and a Surface RT (lol)) that otherwise would not be able to run Volkerding's next GNU/Linux contribution (since Dr. Mozes has decided to maintain SlackwareArm as only a 64-bit suite instead of building it only as a 32-bit port). I hear ol' J.R. "Bob" Dobbs gives the Bonslack system high praise. :D Obviously, I am using a Raspbian kernel in order to do this. But (otherwise) the Bonslack port is unchanged.
I have discovered some minor problems with Bonslack's ARM ports (mainly things like packages linked against old library versions, extra packages (that were removed from -current before Slackware 15.0's release) resulting in difficulties compiling other packages I enjoy building and using). I would like to discuss my experience with the system, the problems I encountered, and how I solved those problems in my cases (and why I think some minor changes to the ARM port's maintenance would enhance its appeal to potential users). Should I do that here? Or, should I start a new post (probably right here on Linux Questions)? Or-- do you (lucabon) have no interest in such trivial things? |
Well-- it's just a couple of things. All of the Bonslack-15.0 ARM ports still contain Raptor and Rasqal packages (those are the RDF packages I *know* about; they were removed from -current December 7, 2020). I'm not sure if there are other included packages that have been removed from -current. But, pretty sure there are. I only noticed because Slackware-15.0's Abiword SlackBuild failed to build on top of ARMv5, ARMv7, and AARCH64 (because it was attempting to build against RDF packages and those packages are built against an older glibc (I think)). Once I removed Raptor and Rasqal, Abiword built fine. Also, ARMv7's mplayer is built against x264-1.52. However, ARMv5 and AARCH64's mplayer are not (and work fine). ARMv7's mplayer prints an error and exits. I happen to have x264-1.48 built for SlackwareArm-14.2. So, I just installed that on my ARMv7 systems and added symlinks for version 1.52. But really, mplayer should be compiled without x264 installed for ARMv7 (so that it uses ffmpeg's new builtin x264 libraries, instead). ;)
|
|
Quote:
Quote:
Quote:
Quote:
|
I just ordered a VisionFive 2 - open source quad-core RISC-V dev board. Now waiting excitedly for it to arrive - sometime in November, so they say ...
chris |
Quote:
Quote:
Quote:
But ffmpeg has H264 builtin decoding libraries used my mplayer, that is the most important part. :) Many thanks! Luca |
Quote:
|
Quote:
Quote:
Most welcome. Happy to contribute. ;) |
OK, so if I was using say Splack (Sparc Slackware port) 12.1, would I just download the packages for 14.2 you have provided and use upgradepkg to install? I just don't want to waste my time doing things the wrong way.
|
All times are GMT -5. The time now is 11:28 PM. |