LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - ARM
User Name
Password
Slackware - ARM This forum is for the discussion of Slackware ARM.

Notices


Reply
  Search this Thread
Old 10-08-2019, 02:17 PM   #1
ziprun
Member
 
Registered: Apr 2018
Posts: 105

Rep: Reputation: Disabled
Slackware on a pinebook pro


Greetings. Has anyone experience with getting slackware to work with the ARM powered pinebook pro now that it's been out for a while?
 
Old 10-09-2019, 12:45 PM   #2
sndwvs
Senior Member
 
Registered: Aug 2014
Posts: 1,915

Rep: Reputation: Disabled
take the kernel from ayufan, everything else as always
 
Old 02-06-2020, 09:57 AM   #3
wowbaggerHU
Member
 
Registered: Feb 2017
Location: Hungary
Distribution: Slackware
Posts: 288

Rep: Reputation: Disabled
bringing this thread to the top again

Hello,

I too recently got my hands on a Pinebook Pro, and would like to install Slackware on it.
Given that there is no official aarch64 Slackware port, I am faced with a dilemma.
Should I use slarm64 or try using Sarpi64 somehow?
In the meantime I also found the thread https://forum.pine64.org/showthread....8207&pid=52624 where the Pine64 people linked an up-to-date kernel source tree with all the necessary patches for the Pinebook pro. I believe that compiling that kernel with the manjaro kernel config could get me a kernel that could work reasonably well with the Pinebook Pro.

I just need to do a bit more reseaerch on how to create an installer image with this kernel to set Slackware up, whichever of the two userlands I choose.
I may be wrong though, it may turn out that the Sarpi64 userland won't work on the PbP.

Has anyone tried something similar?

Thanks,
János
 
Old 02-06-2020, 02:13 PM   #4
sndwvs
Senior Member
 
Registered: Aug 2014
Posts: 1,915

Rep: Reputation: Disabled
for information added support laptop pinebook pro
 
Old 02-07-2020, 05:13 AM   #5
wowbaggerHU
Member
 
Registered: Feb 2017
Location: Hungary
Distribution: Slackware
Posts: 288

Rep: Reputation: Disabled
Thanks for the link. May I ask a few questions?
Unfortunately the README files are pretty vague for both slarm64 and the slackware_arm_build_kit.
Do I understand correctly that the build kit is there to create the installer image for a wide range of devices.
Once git cloned, what scripts are necessary to build the image, and in which order are they supposed to be run?
I further have the impression that the installers built this way can use the package repositories of slarm64. Am I correct with this assumption?
 
Old 02-07-2020, 11:26 AM   #6
aaditya
Member
 
Registered: Oct 2013
Location: India
Distribution: Slackware
Posts: 272
Blog Entries: 2

Rep: Reputation: 85
Quote:
Originally Posted by wowbaggerHU View Post
Thanks for the link. May I ask a few questions?
Unfortunately the README files are pretty vague for both slarm64 and the slackware_arm_build_kit.
Do I understand correctly that the build kit is there to create the installer image for a wide range of devices.
Once git cloned, what scripts are necessary to build the image, and in which order are they supposed to be run?
I further have the impression that the installers built this way can use the package repositories of slarm64. Am I correct with this assumption?
Hi,

I can speak as a user.

slackware_arm_build_kit is used to create images as well as build the kernel and some tools.

Once cloned, try
Code:
./build.sh
This launches a dialog based installer script.

Yes, the created images use the package repository for slarm64.
 
2 members found this post helpful.
Old 02-07-2020, 11:28 AM   #7
sndwvs
Senior Member
 
Registered: Aug 2014
Posts: 1,915

Rep: Reputation: Disabled
Quote:
Originally Posted by wowbaggerHU View Post
Thanks for the link. May I ask a few questions?
Unfortunately the README files are pretty vague for both slarm64 and the slackware_arm_build_kit.
Do I understand correctly that the build kit is there to create the installer image for a wide range of devices.
Once git cloned, what scripts are necessary to build the image, and in which order are they supposed to be run?
I further have the impression that the installers built this way can use the package repositories of slarm64. Am I correct with this assumption?
yes that's right, slackware_arm_build_kit is an assembly kit for creating the final image for different boards.
slackwarearm or slarm64 is selected depending on the SoC architecture.
main startup script ./build.sh, in it all scripts are executed sequentially.
 
3 members found this post helpful.
Old 02-07-2020, 04:00 PM   #8
sndwvs
Senior Member
 
Registered: Aug 2014
Posts: 1,915

Rep: Reputation: Disabled
i’ll create a basic image for testing, please check for operability
 
Old 02-08-2020, 02:45 PM   #9
wowbaggerHU
Member
 
Registered: Feb 2017
Location: Hungary
Distribution: Slackware
Posts: 288

Rep: Reputation: Disabled
Quote:
Originally Posted by sndwvs View Post
i’ll create a basic image for testing, please check for operability
Okay, I will test the installer, and will report back to you. (It may take a few days.)

In the meantime I tried building the installer myself, but unfortunately it failed.
I installed a machine with slackware64-current to build the images on. Do I need any other preparations, like downloading/installing/compiling the cross compilation toolchain?
I'm just asking because I got an error message like this, and this leads me to believe that I need to get the toolchain too:

Code:
...
#
# configuration written to .config
#
scripts/kconfig/conf  --silentoldconfig Kconfig
  CHK     include/config.h
  UPD     include/config.h
  CFG     u-boot.cfg
  GEN     include/autoconf.mk.dep
  CFG     spl/u-boot.cfg
cc1: error: unknown register name: x18 [-Werror]
cc1: error: unknown register name: x18 [-Werror]
cc1: error: unknown register name: x18 [-Werror]
cc1: all warnings being treated as errors
cc1: all warnings being treated as errors
make[1]: *** [scripts/Makefile.autoconf:50: include/autoconf.mk.dep] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [scripts/Makefile.autoconf:83: spl/u-boot.cfg] Error 1
cc1: all warnings being treated as errors
make[1]: *** [scripts/Makefile.autoconf:79: u-boot.cfg] Error 1
make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'.  Stop.
 
Old 02-08-2020, 03:36 PM   #10
sndwvs
Senior Member
 
Registered: Aug 2014
Posts: 1,915

Rep: Reputation: Disabled
if we talk about slackware_arm_build_kit then everything automatically downloads there.
i will make a reservation that I have not tested x86 on a PC for a long time.
if at all you need a cross compiler gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu.tar.xz more
make ARCH=$ARCH CROSS_COMPILE=$CROSS

Last edited by sndwvs; 02-08-2020 at 03:38 PM.
 
2 members found this post helpful.
Old 02-09-2020, 02:53 PM   #11
wowbaggerHU
Member
 
Registered: Feb 2017
Location: Hungary
Distribution: Slackware
Posts: 288

Rep: Reputation: Disabled
Okay, I downloaded the compiler you recommended, however I don't completely understand the last part of your reply

Quote:
Originally Posted by sndwvs View Post
make ARCH=$ARCH CROSS_COMPILE=$CROSS
Where am I supposed to put this? Should I modify one of your scripts to "make" (build) the packages differently (that is cross-compile them)?

Also, I found this article about building one's own toolchain for cross compilation: https://docs.slackware.com/howtos:ha...cross-compiler
Maybe I can use this as a plan B, instead of the "official" compiler, if I encounter any problems that I can't overcome with that.
 
1 members found this post helpful.
Old 02-09-2020, 03:01 PM   #12
sndwvs
Senior Member
 
Registered: Aug 2014
Posts: 1,915

Rep: Reputation: Disabled
Quote:
Originally Posted by wowbaggerHU View Post
Okay, I downloaded the compiler you recommended, however I don't completely understand the last part of your reply



Where am I supposed to put this? Should I modify one of your scripts to "make" (build) the packages differently (that is cross-compile them)?

Also, I found this article about building one's own toolchain for cross compilation: https://docs.slackware.com/howtos:ha...cross-compiler
Maybe I can use this as a plan B, instead of the "official" compiler, if I encounter any problems that I can't overcome with that.
Cross compiler reference for plan B
slackware_arm_build_kit he downloads everything
 
Old 02-12-2020, 07:29 AM   #13
wowbaggerHU
Member
 
Registered: Feb 2017
Location: Hungary
Distribution: Slackware
Posts: 288

Rep: Reputation: Disabled
There have been some developments since my last reply.

(-I managed to compile an aarch64 cross-compilation toolchain on my own.)

I tried setting the environment variables ARCH and CROSS_COMPILE

On my x86_64 based build VM, I set these to:

Code:
export ARCH=aarch64
export CROSS=aarch64-linux-
The build script will try to download a set of cross-compiling toolchains, but the compilation fails with u-boot, right at the beginning:

Code:
|info| add          configuration file 00-environment.conf
|info| add          configuration file build-packages.conf
|info| add          configuration file pinebook_pro.conf
|info| add          configuration file rk3399.conf
|info| download     gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf
|info| extract      gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf
|info| download     gcc-linaro-7.2.1-2017.11-x86_64_aarch64-linux-gnu
|info| extract      gcc-linaro-7.2.1-2017.11-x86_64_aarch64-linux-gnu
|info| download     gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabihf
|info| extract      gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabihf
|info| download     gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu
|info| extract      gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu
|info| download     u-boot-pinebook_pro
...
The end of the build log looks like this:

Code:
#
# configuration written to .config
#
scripts/kconfig/conf  --silentoldconfig Kconfig
  CHK     include/config.h
  UPD     include/config.h
  CFG     u-boot.cfg
  GEN     include/autoconf.mk.dep
  CFG     spl/u-boot.cfg
cc1: error: unknown register name: x18 [-Werror]
cc1: error: unknown register name: x18 [-Werror]
cc1: error: unknown register name: x18 [-Werror]
cc1: all warnings being treated as errors
make[1]: *** [scripts/Makefile.autoconf:83: spl/u-boot.cfg] Error 1
make[1]: *** Waiting for unfinished jobs....
cc1: all warnings being treated as errors
cc1: all warnings being treated as errors
make[1]: *** [scripts/Makefile.autoconf:79: u-boot.cfg] Error 1
make[1]: *** [scripts/Makefile.autoconf:50: include/autoconf.mk.dep] Error 1
make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'.  Stop.

I also tried compiling the installer image on the Debian 9.12 that comes pre-installed on the Pinebook Pro.
This OS has an aarch64 kernel, while the userland seems to consist of regular 32 bit ARM hard-float binaries.
For this reason the build script also fails when I attempt to run it without CROSS and ARCH set.
The error messages in the build log were pretty similar to the ones on the x86_64 machine, they were complaining about the unknown register name x18. The build also failed when compiling u-boot.

After that I tried setting

Code:
export ARCH=aarch64
export CROSS=aarch64-linux
on the Pinebook Pro, but then the build script failed when downloading the cross compilation toolchain, due to a HTTP 404 error:

Code:
https://releases.linaro.org/components/toolchain/binaries/7.2-2017.11/arm-linux-gnueabihf/gcc-linaro-7.2.1-2017.11-aarch64_arm-linux-gnueabihf.tar.xz.asc: 404 Not Found.
So, now I'm kind of stuck again.
 
1 members found this post helpful.
Old 02-13-2020, 10:08 AM   #14
sndwvs
Senior Member
 
Registered: Aug 2014
Posts: 1,915

Rep: Reputation: Disabled
Quote:
Originally Posted by wowbaggerHU View Post
There have been some developments since my last reply.

(-I managed to compile an aarch64 cross-compilation toolchain on my own.)

I tried setting the environment variables ARCH and CROSS_COMPILE

On my x86_64 based build VM, I set these to:

Code:
export ARCH=aarch64
export CROSS=aarch64-linux-
The build script will try to download a set of cross-compiling toolchains, but the compilation fails with u-boot, right at the beginning:

Code:
|info| add          configuration file 00-environment.conf
|info| add          configuration file build-packages.conf
|info| add          configuration file pinebook_pro.conf
|info| add          configuration file rk3399.conf
|info| download     gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf
|info| extract      gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf
|info| download     gcc-linaro-7.2.1-2017.11-x86_64_aarch64-linux-gnu
|info| extract      gcc-linaro-7.2.1-2017.11-x86_64_aarch64-linux-gnu
|info| download     gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabihf
|info| extract      gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabihf
|info| download     gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu
|info| extract      gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu
|info| download     u-boot-pinebook_pro
...
The end of the build log looks like this:

Code:
#
# configuration written to .config
#
scripts/kconfig/conf  --silentoldconfig Kconfig
  CHK     include/config.h
  UPD     include/config.h
  CFG     u-boot.cfg
  GEN     include/autoconf.mk.dep
  CFG     spl/u-boot.cfg
cc1: error: unknown register name: x18 [-Werror]
cc1: error: unknown register name: x18 [-Werror]
cc1: error: unknown register name: x18 [-Werror]
cc1: all warnings being treated as errors
make[1]: *** [scripts/Makefile.autoconf:83: spl/u-boot.cfg] Error 1
make[1]: *** Waiting for unfinished jobs....
cc1: all warnings being treated as errors
cc1: all warnings being treated as errors
make[1]: *** [scripts/Makefile.autoconf:79: u-boot.cfg] Error 1
make[1]: *** [scripts/Makefile.autoconf:50: include/autoconf.mk.dep] Error 1
make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/uboot.release'.  Stop.

I also tried compiling the installer image on the Debian 9.12 that comes pre-installed on the Pinebook Pro.
This OS has an aarch64 kernel, while the userland seems to consist of regular 32 bit ARM hard-float binaries.
For this reason the build script also fails when I attempt to run it without CROSS and ARCH set.
The error messages in the build log were pretty similar to the ones on the x86_64 machine, they were complaining about the unknown register name x18. The build also failed when compiling u-boot.

After that I tried setting

Code:
export ARCH=aarch64
export CROSS=aarch64-linux
on the Pinebook Pro, but then the build script failed when downloading the cross compilation toolchain, due to a HTTP 404 error:

Code:
https://releases.linaro.org/components/toolchain/binaries/7.2-2017.11/arm-linux-gnueabihf/gcc-linaro-7.2.1-2017.11-aarch64_arm-linux-gnueabihf.tar.xz.asc: 404 Not Found.
So, now I'm kind of stuck again.
all variables ARCH,CROSS,CROSS64 defined in scripts
 
Old 02-13-2020, 10:20 AM   #15
wowbaggerHU
Member
 
Registered: Feb 2017
Location: Hungary
Distribution: Slackware
Posts: 288

Rep: Reputation: Disabled
Quote:
Originally Posted by sndwvs View Post
all variables ARCH,CROSS,CROSS64 defined in scripts
Okay, understood. So what should I do? Should I go ahead and modify them in those scripts?
Or if not, then what am I supposed to do? If I don't set them anywhere, and go with the script's defaults, the compilation will simply fail at uboot.
(If I simply don't set any of these environment variables, and go with the defaults in the script, it won't even bother downloading the cross compilation toolchains.)
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: Destination Linux 131 - Endeavour OS, Deepin, OnlyOffice, Silverblue, Pinebook Pro, Ubuntu Mate, GPD LXer Syndicated Linux News 0 07-25-2019 06:41 AM
LXer: Linux 5.2, Debian 10, Pinebook Pro, Mageia, Whonix, GRUB, Valve, Zorin, Mint | This Week in Linux 73 LXer Syndicated Linux News 0 07-10-2019 06:43 AM
Video : New PINE64 Products. PineBook Pro, PinePhone, PineCam, PineH64 NicoD SBC Linux - Embedded & Single-board computer 2 02-06-2019 04:37 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware > Slackware - ARM

All times are GMT -5. The time now is 02:02 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration