Pagina 2 di 2

Re: Multilib: pacchetto 32bit non va più

Inviato: mer 24 lug 2013, 21:05
da 414N
In realtà è al suo posto (/usr/lib64/java/lib/amd64/libjava.so e /usr/lib64/java/lib/amd64/jli/libjava.so sono i percorsi corretti), ma non c'è nessuno script sotto /etc/profile.d che ti imposti le giuste variabili d'ambiente affinché java venga poi rilevato dai vari programmi.
È molto strano, poiché quello script viene inserito dallo SlackBuild nel giusto percorso all'atto della creazione del pacchetto. Mi pare d'obbligo porti la seguente domanda, a questo punto: la sub-directory profile/ dentro la directory dello SlackBuild che hai scaricato da extra/ è vuota o contiene dei file? Se è vuota è MALE :)

Re: Multilib: pacchetto 32bit non va più

Inviato: mer 24 lug 2013, 23:04
da ZeroUno
hai copiato sia i 4 file sia la directory? Tutto lascia pensare che non hai copiato la directory.

/var/log/packages/jre-7u25-x86_64-1 é un file. Vedi il contento e cerca profile.d


libjava non centra assolutamente nulla (nel senso che sta bene nel percorso che ti dice 'locate')
l'errore che ti dice libjava riguarda quelle copie che ti sei fatto a mano.
L'errore che ti dava which java dipende dall'assenza di quei file in profile.d

Re: Multilib: pacchetto 32bit non va più

Inviato: gio 25 lug 2013, 7:02
da james2221
eccomi, all'alba di un nuovo giorno, ciao.
Questo è il contenuto della directory locale JAVA e della subdirectory profile.d

Codice: Seleziona tutto

root@darkstar:~# ls -l /home/piero/Downloads/JAVA/                           
total 45884
-rwxr-xr-x 1 piero piero     5687 Aug  2  2012 java.SlackBuild*
-rwxrwxrwx 1 piero piero 46962005 Jun 22 16:32 jre-7u25-linux-x64.tar.gz*
drwxr-xr-x 2 piero piero     4096 Jul 30  2012 profile.d/
-rw-r--r-- 1 piero piero      822 Dec 19  2010 slack-desc.jdk
-rw-r--r-- 1 piero piero      864 Jul 10  2012 slack-desc.jre
root@darkstar:~# ls -l /home/piero/Downloads/JAVA/profile.d
total 16
-rwxr-xr-x 1 piero piero 143 Aug 29  2007 jdk.csh*
-rwxr-xr-x 1 piero piero 146 Aug 29  2007 jdk.sh*
-rwxr-xr-x 1 piero piero 122 Apr 29  2009 jre.csh*
-rwxr-xr-x 1 piero piero 125 Apr 29  2009 jre.sh*
root@darkstar:~# 
suddetti file sono stati copiati con comando "cp" e contengono ciascuno dei dati (manca solo il file "read.me").
Nel file /var/log/packages/jre-7u25-x86_64-1 trovo profile.d nell'ultima riga, che riporto

Codice: Seleziona tutto

etc/profile.d/
però nella directory /etc/profile.d di file denominati jre.sh nemmeno l'ombra, come visto in precedenza.
Invio questo post un po' velocemente perchè dovrei uscire, ma appena posso disinstallo tutto e rifaccio la procedura annotandomi percorsi, comandi ecc e vediamo dove ho cannato, salvo che abbiate scoperto l'inghippo prima della mia reinstallazione.
Per ora vi ringrazio
ciao

Re: Multilib: pacchetto 32bit non va più

Inviato: gio 25 lug 2013, 10:17
da ZeroUno
crea /etc/profile.d/jre.sh e mettici dentro

Codice: Seleziona tutto

#!/bin/sh
export JAVA_HOME=/usr/lib64/java
export MANPATH="${MANPATH}:${JAVA_HOME}/man"
export PATH="${PATH}:${JAVA_HOME}/bin"
e rendilo eseguibile

Re: Multilib: pacchetto 32bit non va più

Inviato: gio 25 lug 2013, 12:17
da james2221
ciao
lo avevo già fatto ieri, ovvero copiato il file jre.sh da DVD a /etc/profile.d/jre.sh, ma nulla. La differenza con quello che mi hai indicato tu è alla prima riga, lib64 invece di lib, ma comunque o uno o l'altro il risultato è sempre quello. Per la cronaca: reso eseguibile, spento e acceso il pc, dato . /etc/profile.

Grazie
mi darò alla reinstallazione di java, appena posso.

Ciao

Re: Multilib: pacchetto 32bit non va più

Inviato: gio 25 lug 2013, 14:06
da ZeroUno
hai fatto pulizia di tutte le cose che avevi fatto a mano?
Ora which java cosa ti da?
E echo $PATH ?

cosa é rimasto non funzionante?

Re: Multilib: pacchetto 32bit non va più

Inviato: ven 26 lug 2013, 8:56
da james2221
ciao
di cose fatte a mano ce ne sono un paio, la prima, dato che which java non trovava niente, è stata questa

Codice: Seleziona tutto

root@darkstar:~# cp /usr/lib64/qt/bin/java/java /usr/bin/
per cui attualmente ho

Codice: Seleziona tutto

root@darkstar:~# which java
/usr/bin/java
root@darkstar:~# 
. Partendo dal fatto che devo eseguire questo comando

Codice: Seleziona tutto

piero@darkstar:~$ /home/piero/wuala/wuala
dopo l'intervento di cui sopra mi dava per mancante la libjli.so che ho sistemato ed ora ho questo

Codice: Seleziona tutto

root@darkstar:~# locate libjli.so
/usr/lib64/qt/bin/libjli.so
/usr/lib64/qt/bin/java/libjli.so
/usr/lib64/java/lib/amd64/jli/libjli.so
root@darkstar:~# 
. Questi sono gli unici due interventi manuali che ho eseguito. In questo momento ho questa situazione

Codice: Seleziona tutto

piero@darkstar:~$ /home/piero/wuala/wuala
Running on display :0.0
/usr/bin/java
Error: could not find libjava.so
Error: Could not find Java SE Runtime Environment.
piero@darkstar:~$ 
.

Codice: Seleziona tutto

piero@darkstar:~$ echo $PATH 
/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/lib64/java/bin:/usr/lib64/kde4/libexec:/usr/lib64/qt/bin:/usr/share/texmf/bin:.
piero@darkstar:~$ 

Come scrivevo ieri se dovessi trovare una mezzoretta reinstallerei il pcchetto, ma dato che lo avevo già fatto mi ritroverei nella stessa situazione. Pertanto cortesemente ti chiedo: è il caso di riparare questo java o forse non è meglio installare qualcosa di diverso (open o altro ) ???
grazie
riedito : per far partire 'sto maldido wuala posso provare direttamente anche dal sito, Firefox cerca java per settimane, se non lo fermo, Opera mi dice che java non c'è, il sito di Oracle mi conferma tutto ok. Ma che si mettano d'accordo almeno loro !!!

Re: Multilib: pacchetto 32bit non va più

Inviato: ven 26 lug 2013, 17:39
da ZeroUno
Copiando java a mano su /usr/bin, questo non si è ritrovato le librerie di contorno.

Ho finalmente una slackware sottomano con installato openjdk

In profile.d ho /etc/profile.d/jdk.sh (che è poco diverso da quello della jre)

Codice: Seleziona tutto

#!/bin/sh
export JAVA_HOME=/usr/lib64/java
export MANPATH="${MANPATH}:${JAVA_HOME}/man"
export PATH="${PATH}:${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin
quindi:

Codice: Seleziona tutto

# which java
/usr/lib64/java/bin/java
# java -version
java version "1.7.0_40"
OpenJDK Runtime Environment (IcedTea 2.4.1) (Slackware)
OpenJDK 64-Bit Server VM (build 24.0-b50, mixed mode)
# ldd /usr/lib64/java/bin/java
...
        libjli.so => /usr/lib64/java/bin/../jre/lib/amd64/jli/libjli.so (0x00007f2aa378f000)
[/url]

In questo modo wuala mi funziona correttamente lanciato command line (non ho provato da browser visto che non ho un account).
[code]$ ./wuala
Running on display :0
/usr/lib64/java/bin/java
Ho provato anche con la oracle jdk (non fatta con lo slackbuild ma scompattata da una parte personalizzata) e dandogli il PATH assoluto funziona:

Codice: Seleziona tutto

$ PATH=/usr/lib64/oraclejdk1.7.0_17/bin/:$PATH ./wuala
Running on display :0
/usr/lib64/oraclejdk1.7.0_17/bin/java
Facendo quello che hai fatto tu:

Codice: Seleziona tutto

# cp /usr/lib64/java/bin/java /usr/bin/
# which java
/usr/bin/java
# java -version
java: error while loading shared libraries: libjli.so: cannot open shared object file: No such file or directory
# ldd /usr/bin/java
        libjli.so => not found
inoltre lascia stare la jdk sotto /usr/lib64/qt che non si sa nemmeno cosa sia.
Per sapere i java che hai di quale pacchetto fanno parte, dai:

Codice: Seleziona tutto

# grep bin/java$ /var/log/packages/*
Una volta che hai messo a mano il jre.sh in profile.d, con la JAVA_HOME modificata a lib64 invece di lib, e una volta che rimuovi /usr/bin/java e l'altro workaround per libjli.so e risistemi ld.so.conf (che mi pare hai modificato), dovrebbe funzionarti tutto.

Re: Multilib: pacchetto 32bit non va più

Inviato: mar 30 lug 2013, 17:32
da james2221
OK RISOLTO
Risolutivo è stato il file

Codice: Seleziona tutto

/etc/profile.d/jre.sh
in particolare l'ultima riga è diversa dal file che avevo io da DVD

Codice: Seleziona tutto

#!/bin/sh
export JAVA_HOME=/usr/lib64/java
export MANPATH="${MANPATH}:${JAVA_HOME}/man"
export PATH="${PATH}:${JAVA_HOME}/bin:${JAVA_HOME}/jre/bin"
Grazie tante per il disturbo che ti sei preso, e con te 414N e quantaltri hanno collaborato

ciao