Slackware - ARMThis forum is for the discussion of Slackware ARM.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I haven't tried it myself but I presume that AlienBoB's LibreOffice SlackBuild script will work under Slack ARM 14.2. What you're trying to achieve is to use that script under Slack ARM - current, which is still in development and a different beast when it comes to ARM architecture.
By looking forward to get an ARM-powered basic desktop system in the near future I might share your interest in getting this resolved under Slack ARM current.
The error you stumbled upon looks like an ARM architecture (SF/HF included) mismatch, between what the configure script has guessed, the CFLAGS and compiler target "ARCH-slackware-linux-gnueabi" that are provided in the build script.
From your last post:
case "$ARCH" in
arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
*) TARGET=$ARCH-slackware-linux ;;
esac
You haven't specified the ARM architecture you are compiling on and I guess it's an armv7 which is HF and has the NEON SIMD instructions, therefore you should first change the line (not sure if -std=c++98 is really needed):
SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -std=c++98"
to
SLKCFLAGS="-O3 -march=armv7-a -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard -std=c++98"
And then, as @drmozes suggested, change the Target:
arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
to
arm*) TARGET=$ARCH-slackware-linux-gnueabihf ;;
Give it a try please and see if it works. I'm kinda busy these days and have no time to setup an environment (Raspbery Pi2 + external HDD) and start a compilation on my own, but I'll deffo do it during the weekend.
This should actually be "arm)" - the architecture name "armv7hl" was for Eric's own ARM port. Doing this will set the CFLAGS correctly.
All Slackware ARM always uses the architecture of "arm" regardless of software or hardware floating point ABI. 3rd party scripts need to check an existing binary and determine how the OS is built:
I've put this code here -- this is how 3rd parties should differentiate between 14.2 (and prior) and -current going forwards.
Too bad you're not sub-checking 32 bit neon-friendly CPUs for -mfpu=neon.
It would ease the recompile and greatly improve the performance on many applications.
Too bad you're not sub-checking 32 bit neon-friendly CPUs for -mfpu=neon.
It would ease the recompile and greatly improve the performance on many applications.
I'm not sure what this means, but VFPv3-D16 is the lowest common baseline which is supported by the Tegra20.
Indeed, not all armv7 have a neon pipeline.
I meant that i usually use sed to enable neon in SLKCFLAGS= , but it would be convenient to get a neon auto-detection for SB and/or at least SBo files.
- it's not "my patch" I just googled after armhelper.S, learned that it's an Ubuntu/Debian patch and inserted the link for reference
- the vpush instruction that broke your compilation (the compiler/build scripts considered (I guess) that your CPU is not able to use it - e.g. doesn't have VFP) seems to be VFP specific and only shared with NEON: http://infocenter.arm.com/help/topic.../Bcfchhif.html http://infocenter.arm.com/help/topic.../CHDIIHGF.html
- my first attempt would be to uncomment (wondering what was the reason to comment it in the first place?) the conditional checking from armhelper.S and try the compilation again:
Code:
#ifdef __ARM_PCS_VFP
vpush {d0-d7} @ floating point parameter on stack
#endif
- if it still doesn't work and since you have already the whole LO source tree, either edit the configure script or just run:
Code:
./configure --help | more
and look for a directive to disable any use of ASM code. While not optimal, the resulted build will be slower without the optimizations, at least you can narrow down the cause of the issue. There could be some other scripts, not Slackware related, in the LO source that are not properly recognizing your CPU and I still don't know what platform you are trying to compile it on, I just hope you're not cross-compiling.
- I'm wondering what the configure directive --with-system-neon is for, enabling the NEON SIMD code?: http://www.slackware.com/~alien/slac...ice.SlackBuild
- you're right, while NEON was introduced with Cortex-A7, it seems not all Cortex-A7 come with these NEON SIMD extension enabled/implemented, I forgot that and considered that it's the same as with Cortex-A8, which has it by default. You should check your CPU if it's NEON-able. https://en.wikipedia.org/wiki/ARM_ar...IMD_.28NEON.29
- furthermore, the source code needs to make explicit use of the NEON instructions, a compiler directive won't really help if there's no such code in the source. And, it looks like the compiler (gcc) needs the third stage of optimization (-O3) to produce usable VFP code: https://community.arm.com/tools/b/bl...-command-lines
I'll team up with you in the weekend, until then I wish you good luck with your attempts.
Failed to install: No such file or directory at /tmp/build/tmp-libreoffice/libreoffice-5.4.2.2/solenv/bin/ooinstall line 92.
make: *** [Makefile:314: install] Error 2
Installing XML files because 'make distro-pack-install' fails to do so...
install: target '/tmp/build/package-libreoffice/usr/share/appdata/' is not a directory: No such file or directory
libreoffice.SlackBuild FAILED at line 1274
/tmp/install-libreoffice.log :
Code:
ERROR: Failure in installer.pm
ERROR: ERROR: Script setup_osl.ins not found! at /tmp/build/tmp-libreoffice/libreoffice-5.4.2.2/solenv/bin/modules/installer/setupscript.pm line 76.
...
: ERROR: Source for setup_osl.ins not found!
...
Wed Nov 1 23:44:12 2017 (00:00 min.)
Failed to install: No such file or directory at /tmp/build/tmp-libreoffice/libreoffice-5.4.2.2/solenv/bin/ooinstall line 92.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.