LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
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 11-04-2017, 06:59 PM   #1
Jeebizz
Senior Member
 
Registered: May 2004
Distribution: Slackware 14.2 64-bit with multilib
Posts: 2,397

Rep: Reputation: 637Reputation: 637Reputation: 637Reputation: 637Reputation: 637Reputation: 637
Question Shouldn't java on a 64-bit sys. be in /usr/lib64?


I am using the java.SlackBuild from /extra to install jdk-9.0.1_linux-x64_bin.tar.gz (from oracle) but what I am noticing is that the script is building a i586 package, why?

I am running multilib, so I decided to run the same script in a pure Slackware64 VM - but I am still noticing the same behavior, everything is being installed in /usr/lib instead of /usr/lib64 , I didn't even do anything to the script itself, what gives?

Code:
PKGNAM=$(basename $SOURCETGZ | cut -f 1 -d -)
VERSION=$(basename $SOURCETGZ | cut -f 2 -d -)
DVER=$(tar tf $SOURCETGZ | head -n 1 | cut -f 2 -d $(echo $PKGNAM | cut -b 3) | cut -f 1 -d /)
JAVA_ARCH=$(basename $SOURCETGZ | cut -f 4 -d - | cut -f 1 -d .)
if [ "$JAVA_ARCH" = "x64" ]; then
  LIB_ARCH=amd64
  ARCH=x86_64
  LIBDIRSUFFIX="64"
So, unless I am mistaken this should mean that the package would install in /usr/lib64 right?

Also:

Code:
cd $PKG
rm -f $TMP/${PKGNAM}-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz
/sbin/makepkg -l y -c n $TMP/${PKGNAM}-$(echo $VERSION | tr - _)-$ARCH-$BUILD.txz
Should produce a package named jdk-9.0.1_linux-x86_64-1.txz , however from both the multi-lib and pure 64 VM, this is the final output:

Quote:
usr/lib/java/include/linux/jni_md.h
usr/lib/java/include/jvmticmlr.h
usr/lib/java/include/classfile_constants.h
usr/lib/java/include/ir.idl
usr/lib/mozilla/
usr/lib/mozilla/plugins/
usr/share/
usr/share/applications/
usr/share/icons/
usr/share/mime/
etc/
etc/profile.d/
etc/profile.d/jdk.csh
etc/profile.d/jdk.sh
install/
install/slack-desc
install/doinst.sh
WARNING: zero length file usr/lib/java/lib/missioncontrol/p2/org.eclipse.equinox.p2.engine/profileRegistry/JMC.profile/.lock
WARNING: zero length file usr/lib/java/lib/security/trusted.libraries

Slackware package /tmp/jdk-9.0.1_linux-i586-1.txz created.
Maybe it is just a cosmetic issue, but still I can't figure out why x86_64 is being ignored, thus essentially creating a 32-bit labeled package.

Last edited by Jeebizz; 11-04-2017 at 07:04 PM.
 
Old 11-04-2017, 07:13 PM   #2
mats_b_tegner
Member
 
Registered: Nov 2009
Location: Gothenburg, Sweden
Distribution: Slackware64
Posts: 422

Rep: Reputation: 204Reputation: 204Reputation: 204
The java.SlackBuild-script doesn't seem to work with JDK 9 since Oracle changed the directory structure: https://docs.oracle.com/javase/9/ins...dk-and-jre.htm. The script does work with JDK 8u152.
Quote:
...
usr/lib64/java/COPYRIGHT
usr/lib64/java/LICENSE
usr/lib64/java/release
usr/lib64/java/THIRDPARTYLICENSEREADME.txt
usr/lib64/java/THIRDPARTYLICENSEREADME-JAVAFX.txt
usr/lib64/java/db/
usr/lib64/java/db/bin/
usr/lib64/java/db/bin/dblook
usr/lib64/java/db/bin/stopNetworkServer
usr/lib64/java/db/bin/startNetworkServer
usr/lib64/java/db/bin/stopNetworkServer.bat
usr/lib64/java/db/bin/setNetworkServerCP
usr/lib64/java/db/bin/ij
usr/lib64/java/db/bin/setEmbeddedCP.bat
usr/lib64/java/db/bin/NetworkServerControl
usr/lib64/java/db/bin/startNetworkServer.bat
usr/lib64/java/db/bin/sysinfo
usr/lib64/java/db/bin/setNetworkServerCP.bat
usr/lib64/java/db/bin/dblook.bat
usr/lib64/java/db/bin/setEmbeddedCP
usr/lib64/java/db/bin/derby_common.bat
usr/lib64/java/db/bin/setNetworkClientCP.bat
usr/lib64/java/db/bin/ij.bat
usr/lib64/java/db/bin/sysinfo.bat
usr/lib64/java/db/bin/setNetworkClientCP
usr/lib64/java/db/bin/NetworkServerControl.bat
usr/lib64/java/db/lib/
usr/lib64/java/db/lib/derbyLocale_ko_KR.jar
usr/lib64/java/db/lib/derbyLocale_pl.jar
usr/lib64/java/db/lib/derbyLocale_zh_CN.jar
usr/lib64/java/db/lib/derbyLocale_ru.jar
usr/lib64/java/db/lib/derbyLocale_it.jar
usr/lib64/java/db/lib/derbyoptionaltools.jar
usr/lib64/java/db/lib/derbyLocale_ja_JP.jar
usr/lib64/java/db/lib/derbyLocale_fr.jar
usr/lib64/java/db/lib/derbyLocale_hu.jar
usr/lib64/java/db/lib/derbyLocale_es.jar
usr/lib64/java/db/lib/derbyLocale_pt_BR.jar
usr/lib64/java/db/lib/derby.jar
usr/lib64/java/db/lib/derbyclient.jar
usr/lib64/java/db/lib/derbyLocale_zh_TW.jar
usr/lib64/java/db/lib/derbynet.jar
usr/lib64/java/db/lib/derbytools.jar
usr/lib64/java/db/lib/derbyLocale_de_DE.jar
usr/lib64/java/db/lib/derbyrun.jar
usr/lib64/java/db/lib/derby.war
usr/lib64/java/db/lib/derbyLocale_cs.jar
usr/lib64/java/db/LICENSE
usr/lib64/java/db/README-JDK.html
usr/lib64/java/db/3RDPARTY
usr/lib64/java/db/NOTICE
usr/lib64/java/db/RELEASE-NOTES.html
usr/lib64/java/src.zip
usr/lib64/mozilla/
usr/lib64/mozilla/plugins/
etc/
etc/profile.d/
etc/profile.d/jdk.sh
etc/profile.d/jdk.csh
...
Slackware package /tmp/jdk-8u152-x86_64-1.txz created.
For the time being I would put JDK 9 in a user's home directory and point the JAVA_HOME environment variable to that location and use JDK 8 system wide.

Mats

Last edited by mats_b_tegner; 11-04-2017 at 07:52 PM.
 
2 members found this post helpful.
Old 11-04-2017, 07:28 PM   #3
Jeebizz
Senior Member
 
Registered: May 2004
Distribution: Slackware 14.2 64-bit with multilib
Posts: 2,397

Original Poster
Rep: Reputation: 637Reputation: 637Reputation: 637Reputation: 637Reputation: 637Reputation: 637
That answers it, damn Oracle for breaking the slackbuild
 
1 members found this post helpful.
Old 11-05-2017, 12:13 AM   #4
Marcelo_Belfalas
Member
 
Registered: Apr 2012
Location: Brazil
Distribution: Slackware64-current multilib
Posts: 32

Rep: Reputation: 18
Well, the change is probably caused by Project Jigsaw (JSR-376), which aims to break apart java modules and so make that only modules actually needed by the application loads up.

This will change java as a whole, especially in memory restraint devices.

I would also recommend waiting on updating to java 9, since this changes may break some applications.
 
2 members found this post helpful.
Old 11-08-2017, 06:36 PM   #5
Ook
Member
 
Registered: Apr 2004
Location: Hell, Arizona
Distribution: Slackware 14.1
Posts: 531

Rep: Reputation: 92
This might not be terribly helpful, and I'm sure someone will give many reasons not to do it this way - but I always download java straight from the java.com website, extract it into /usr/local/java-<version>, and then symlink that to /usr/local/java. Then I added /usr/local/java/bin to the path via a script in /etc/profile.d, and I've never had problems with java. I don't remember exactly why I do this because I started doing it years ago, but I vaguely recall it was a slackbuilds problem way back when.

There are a handful of things that I download/compile/install by hand, rather then use whatever comes with the distro or is available on slackbuilds. Java is one of them.
 
3 members found this post helpful.
Old 11-10-2017, 05:30 PM   #6
rworkman
Slackware Contributor
 
Registered: Oct 2004
Location: Tuscaloosa, Alabama (USA)
Distribution: Slackware
Posts: 2,227

Rep: Reputation: 714Reputation: 714Reputation: 714Reputation: 714Reputation: 714Reputation: 714Reputation: 714
It's not merge-ready yet (and it's x86_64 only), but maybe this is helpful: https://git.slackbuilds.org/slackbui...=java9-nomerge
 
3 members found this post helpful.
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

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
[SOLVED] I get java.io.IOException from seamonkey-2.40/libnssutil3.so version `NSSUTIL_3.21' not found (required by /usr/lib64/libnss3.so) toodr Slackware 6 08-24-2016 04:57 AM
[SOLVED] Current java.SlackBuild Does Not Install as /usr/lib64/java/jre tronayne Slackware 0 09-28-2012 11:25 AM
Need surefire way to build 64-bit libs with cmake -> /usr/lib64 H_TeXMeX_H Linux - Software 1 03-21-2010 02:01 AM
slackware64 /usr/lib /usr/lib64 question disturbed1 Slackware 29 02-14-2010 09:05 AM
Location of libraries in /usr/lib/ or /usr/lib64/ in Slackware64 niels.horn Slackware 2 06-24-2009 05:25 AM

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

All times are GMT -5. The time now is 05:23 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
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration