LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 04-12-2019, 03:53 PM   #31
luvr
Member
 
Registered: May 2005
Location: Boom - The Home Town of Tomorrowland, Belgium
Distribution: Slackware, Xubuntu
Posts: 459

Original Poster
Blog Entries: 2

Rep: Reputation: 194Reputation: 194
Failure...


’t Was fun while it lasted, but, alas: The final step, building openjdk8, fails with a segmentation fault:
Code:
/tmp/SBo/openjdk8/icedtea-build/openjdk-boot/hotspot/src/share/vm/precompiled/precompiled.hpp:1:0: internal compiler error: Segmentation fault
 /*
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
/tmp/SBo/openjdk8/icedtea-build/openjdk-boot/hotspot/src/share/vm/precompiled/precompiled.hpp:1:0: internal compiler error: Segmentation fault
 /*
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
I’m afraid that submitting a bug report won’t be of too much help, given that the sequence of steps to arrive here needs ridiculously outdated software—which has to be patched in totally unsupported ways to even do something that looks like working.

It is, actually, pretty surprising that I got this far:
  • I built the Oracle jdk (which went fine, and is really the only step that might be considered “supported”);
  • I built gcc5—which needed a crazy patch, to avoid including the <sys/ustat.h> header file (which no longer exists);
  • I built apache-ant199—which I created as a copy of the apache-ant SlackBuild, to fix the Apache Ant version to 1.9.9 (because the next step, openjdk, runs into a Java Exception with a later Apache Ant version);
  • I built openjdk—but not without its own set of patches, to (1) replace header file <attr/xattr.h> with <sys/xattr.h>, and (2) eliminate a check for the FreeType version, which wrongly failed;
  • I attempted to build openjdk8—which ran into the segmentation fault.
I’ll leave it at that—it was quite an instructive exercise, but this is where the story ends.
 
Old 04-12-2019, 05:37 PM   #32
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 2,504

Rep: Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461Reputation: 8461
Are you using ccache? If so, try without that. You might also try removing the precompiled headers from your system.
 
Old 04-13-2019, 02:54 AM   #33
luvr
Member
 
Registered: May 2005
Location: Boom - The Home Town of Tomorrowland, Belgium
Distribution: Slackware, Xubuntu
Posts: 459

Original Poster
Blog Entries: 2

Rep: Reputation: 194Reputation: 194
Quote:
Originally Posted by volkerdi View Post
Are you using ccache? If so, try without that.
I have no idea. I haven’t done anything to turn it on or off, so I guess I’m running with the default option (whatever that is).

Quote:
You might also try removing the precompiled headers from your system.
Good point; the compiler error appears to point to precompiled headers as a possible source of the problem.

Last edited by luvr; 04-16-2019 at 04:12 PM.
 
Old 04-14-2019, 04:31 PM   #34
luvr
Member
 
Registered: May 2005
Location: Boom - The Home Town of Tomorrowland, Belgium
Distribution: Slackware, Xubuntu
Posts: 459

Original Poster
Blog Entries: 2

Rep: Reputation: 194Reputation: 194
WOW! Success after all!

I hadn’t thought I would have gotten a chance to look into it today, but I had a few hours to spare nonetheless. I have now successfully built openjdk8. As Pat suspected, the “internal compiler error: Segmentation fault” was caused by ccache, which apparently gets used by the openjdk8 build by default. It can, however, be disabled by the ‘--disable-ccache’ option.

Incidentally, there’s a typo in the IcedTea ‘INSTALL’ file, which claims that the option is called ‘--disable-cache’ (that’s “hyphen cache”) instead of ‘--disable-ccache’ (that’s “hyphen see cache”). Since I RTFMed, I copied the typo on my first attempt to disable ccache…

Anyhow, I now have four patch sets that can be applied to the Ponce SlackBuilds repository:
  • development/gcc5—mainly to fix the build because of the missing header file, <sys/ustat.h>;
  • development/apache-ant199—new, because building openjdk fails with Apache Ant versions later than 1.9.9;
  • development/openjdk—mainly to replace <attr/xattr.h> with <sys/xattr.h> and to skip the FreeType version test, which wrongly fails;
  • development/openjdk8—mainly to disable ccache to avoid the “internal compiler error: Segmentation fault”.

Last edited by luvr; 04-16-2019 at 03:09 PM.
 
Old 04-18-2019, 03:32 PM   #35
luvr
Member
 
Registered: May 2005
Location: Boom - The Home Town of Tomorrowland, Belgium
Distribution: Slackware, Xubuntu
Posts: 459

Original Poster
Blog Entries: 2

Rep: Reputation: 194Reputation: 194
Fresh Slackware-current install: No Luck.

In response to…
Quote:
Originally Posted by ponce View Post
I have no idea if something had broken in your installation with usage...
you can try installing directly current using an iso

http://bear.alienbase.nl/mirrors/sla...4-current-iso/

if you do a full installation and try to build gcc5 from this fork of SBo as the first action after rebooting post-installation the environment should be as clean as it can get, I suppose.
… I installed Slackware-current from the slackware64-current-install-dvd.iso that I downloaded together with the ‘LATEST_ADDITION_TO_CURRENT’ file with the following contents:
Code:
Mon Apr 15 19:46:20 UTC 2019
I copied the ISO file to a USB stick, from which I subsequently rebooted my laptop (which runs in Legacy BIOS mode, and has a single 1-TB disk that has ten GPT partitions). I selected ‘/dev/sda5’ as the system partition, selected no other partitions, no swap, all package series, terse mode, no network setup, no LILO (my master boot loader is the GRUB copy that was installed by Debian). After installation, I let Debian update the GRUB configuration, so I could subsequently boot this newly installed Slackware-current system.

After I booted the new Slackware-current system, I copied the ‘gcc5’ SlackBuild (that I had downloaded as part of a cloning operation of ‘https://github.com/Ponce/slackbuilds.git’) to the ‘/root’ directory (i.e., the home location of the ‘root’ user), and I added the ‘antlr-runtime-3.4.jar’, ‘ecj-4.9.jar’, ‘fastjar-0.97.tar.xz’, and ‘gcc-5.5.0.tar.xz’ archive files that I had downloaded from ‘http://www.slackware.com/~alien/slackbuilds/gcc5/build/’. Just to be sure, I verified the checksums of these archive files, using a silly little code snippet that I had once written as an exercise on the sed command:
Code:
#!/bin/bash
sed --silent --regexp-extended --expression='

   \~^(DOWNLOAD="|[[:space:]]*)http~ {

      s~^(DOWNLOAD="|[[:space:]]*)https?://[^[:space:]"]+/([^[:space:]"/]+).*$~\2~
      H

      }

   \~^(MD5SUM="|[[:space:]]*)[[:xdigit:]]{32}[[:space:]"\]*$~ {

      s~^(MD5SUM="|[[:space:]]*)([[:xdigit:]]{32}).*$~\2 *~
      G
      s~\n+~~
      P
      s~^[[:xdigit:]]{32} \*[^[:space:]]+\n+~~
      h

   }

' gcc5.info   |   md5sum -c
Three of the four checksums matched, but the fourth file, ‘fastjar-0.97.tar.gz’, was missing; apparently, the Alien SlackBuild includes ‘fastjar-0.97.tar.xz instead. I therefore, downloaded ‘fastjar-0.97.tar.gz from the location given in the ‘gcc5.info’ file. (Actually, as it turns out, the contents of the ‘xz’ and the ‘gz’ copies are completely identical, and the SlackBuild can handle either of them.) That made the above code snippet happy:
Code:
gcc-5.5.0.tar.xz: OK
antlr-runtime-3.4.jar: OK
ecj-4.9.jar: OK
fastjar-0.97.tar.gz: OK
Thus, it was time to start the SlackBuild:
Code:
# ./gcc5.SlackBuild 2>&1 | tee ~/gcc5.build.log
The first line of output was, as expected:
Code:
Building these compilers: c,c++,java
and the output ends, as normal, with:
Code:
WARNING:  zero length file usr/doc/gcc-5.5.0/gcc/DEV-PHASE

Slackware package /tmp/gcc5-5.5.0-x86_64-1SBo.tgz created.
HOWEVER, the resulting package did not include the Java-related stuff. If I list the contents of the resulting package, then only 1398 lines of output are produced (just as with my initial attempt at building the package):
Code:
# tar -tvf /tmp/gcc5-5.5.0-x86_64-1SBo.tgz | wc --lines
1398
To be completely honest, I would have been surprised had it fared any better than my initial build attempt, because it attempts to compile source file ‘sanitizer_platform_limits_posix.cc’, which attempts to include header file ‘sys/ustat.h’—which does not exist:
Code:
152586 libtool: compile:  /tmp/SBo/gcc.build.lnx/./gcc/xgcc -shared-libgcc -B/tmp/SBo/gcc.build.lnx/./gcc -nostdinc++ -L/tmp/SBo/gcc.build.lnx/x86_64-slackware-linux/libstdc++-v3/src -L/tmp/SBo/gcc.build.lnx/x86_64-slackware-linux/libstdc++-v3/src/.libs -L/tmp/SBo/gcc.build.lnx/x86_64-slackware-linux/libstdc++-v3/libsupc++/.libs -B/usr/x86_64-slackware-linux/bin/ -B/usr/x86_64-slackware-linux/lib/ -isystem /usr/x86_64-slackware-linux/include -isystem /usr/x86_64-slackware-linux/sys-include -D_GNU_SOURCE -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -DHAVE_RPC_XDR_H=1 -DHAVE_TIRPC_RPC_XDR_H=1 -I. -I../../../../gcc-5.5.0/libsanitizer/sanitizer_common -I.. -I ../../../../gcc-5.5.0/libsanitizer/include -isystem ../../../../gcc-5.5.0/libsanitizer/include/system -Wall -W -Wno-unused-parameter -Wwrite-strings -pedantic -Wno-long-long -fPIC -fno-builtin -fno-exceptions -fno-rtti -fomit-frame-pointer -funwind-tables -fvisibility=hidden -Wno-variadic-macros -I../../libstdc++-v3/include -I../../libstdc++-v3/include/x86_64-slackware-linux -I../../../../gcc-5.5.0/libsanitizer/../libstdc++-v3/libsupc++ -std=gnu++11 -DSANITIZER_LIBBACKTRACE -DSANITIZER_CP_DEMANGLE -I ../../../../gcc-5.5.0/libsanitizer/../libbacktrace -I ../libbacktrace -I ../../../../gcc-5.5.0/libsanitizer/../include -include ../../../../gcc-5.5.0/libsanitizer/libbacktrace/backtrace-rename.h -g -O2 -fPIC -D_GNU_SOURCE -MT sanitizer_platform_limits_posix.lo -MD -MP -MF .deps/sanitizer_platform_limits_posix.Tpo -c ../../../../gcc-5.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc  -fPIC -DPIC -o .libs/sanitizer_platform_limits_posix.o
152587 ../../../../gcc-5.5.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc:141:23: fatal error: sys/ustat.h: No such file or directory
152588 compilation terminated.
152589 make[4]: *** [Makefile:449: sanitizer_platform_limits_posix.lo] Error 1
152590 make[4]: Leaving directory '/tmp/SBo/gcc.build.lnx/x86_64-slackware-linux/libsanitizer/sanitizer_common'
152591 make[3]: *** [Makefile:437: all-recursive] Error 1
152592 make[3]: Leaving directory '/tmp/SBo/gcc.build.lnx/x86_64-slackware-linux/libsanitizer'
152593 make[2]: *** [Makefile:307: all] Error 2
152594 make[2]: Leaving directory '/tmp/SBo/gcc.build.lnx/x86_64-slackware-linux/libsanitizer'
152595 make[1]: *** [Makefile:13534: all-target-libsanitizer] Error 2
152596 make[1]: Leaving directory '/tmp/SBo/gcc.build.lnx'
152597 make: *** [Makefile:21415: bootstrap] Error 2
In my humble opinion, at least for me, this issue cannot ever get resolved without an appropriate patch. (Fortunately, there is a patch available, because I wouldn’t otherwise know where to even begin to look for a solution to this error…)

Anyhow, I’ll leave this “clean” Slackware-current system installed for now, so if anyone has any kind of sensible suggestion about how I might ever be able to successfully build this package without the patch, please shoot!
 
Old 04-19-2019, 04:09 AM   #36
ponce
LQ Guru
 
Registered: Aug 2004
Location: Pisa, Italy
Distribution: Slackware
Posts: 7,097

Rep: Reputation: 4174Reputation: 4174Reputation: 4174Reputation: 4174Reputation: 4174Reputation: 4174Reputation: 4174Reputation: 4174Reputation: 4174Reputation: 4174Reputation: 4174
I apologize, the extensive test you made (thanks a lot for that!) pushed me to had a deeper look and you are right, the glibc patch is needed, when I had checked for some reason I missed the error you reported.
I had a deeper look and it seems what got packaged without the patch was enough to build pdftk (that needed gcjh) but was incomplete: I'll apply your patch, I think it should be ok for Alien Bob (send it to him too).
again I'm sorry for not having realized this earlier...

Last edited by ponce; 04-19-2019 at 04:11 AM.
 
Old 04-21-2019, 12:29 PM   #37
luvr
Member
 
Registered: May 2005
Location: Boom - The Home Town of Tomorrowland, Belgium
Distribution: Slackware, Xubuntu
Posts: 459

Original Poster
Blog Entries: 2

Rep: Reputation: 194Reputation: 194
Quote:
Originally Posted by ponce View Post
again I'm sorry for not having realized this earlier...
No problem… I learned something new, too, in that I discovered the Slackware-current ISO—which I hadn’t noticed before.
 
Old 04-22-2019, 02:04 AM   #38
luvr
Member
 
Registered: May 2005
Location: Boom - The Home Town of Tomorrowland, Belgium
Distribution: Slackware, Xubuntu
Posts: 459

Original Poster
Blog Entries: 2

Rep: Reputation: 194Reputation: 194
Quote:
Originally Posted by ponce View Post
regarding openjdk/apache-ant can you please get in touch with the openjdk maintainer and ask his opinion on the matter?
I mailed the apache-ant maintainer (my mistake—I realised I should have contacted the openjdk maintainer instead, but only after the mail was sent).

Additionally, I did a little research, and I found the following on the Apache Ant website (emphasis mine):
Quote:
The Apache Ant team currently maintains two lines of development. The 1.9.x releases require Java5 at runtime and 1.10.x requires Java8 at runtime. Both lines are based off of Ant 1.9.7 and the 1.9.x releases are mostly bug fix releases while additional new features are developed for 1.10.x. We recommend using 1.10.x unless you are required to use versions of Java prior to Java8 during the build process.
So—given that, when I build openjdk, the only Java support available is what is offered by GCC 5.5.0 (i.e., Java 5), I will at that point have no choice but to fall back to Apache Ant 1.9.x.
 
  


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
Chromium (Alien Bob SlackBuild) 53.x.x.x - Segmentation Fault vtel57 Slackware 24 10-15-2016 08:24 PM
Alien Bob's Libreoffice 4.3.0.4 slackbuild AlleyTrotter Slackware 1 08-06-2014 04:53 PM
[SOLVED] Alien Bob's VLC slackbuild fails on current Daedra Slackware 4 10-25-2010 03:14 PM
Command to create local mirror of Alien Bob's kde4.4.0 packages damgar Slackware 5 02-11-2010 11:41 AM
[SOLVED] Wine Install fails at line 291 - Alien Bob's SlackBuild script Tim Johnson Slackware 14 02-01-2010 11:52 PM

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

All times are GMT -5. The time now is 07:57 AM.

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