Pagina 1 di 2

Creare symlink in /usr/lib

Inviato: ven 29 apr 2016, 22:32
da francesco bat
Ciao a tutti.
Vi chiedo info su questo argomento generico che riguarda Slackware ma anche altre distro (per evitare di postare su tutti i forum :roll: ).
Io ho Slackware 14.1 a 64 bit ma anche PCLinuxOS e Peppermint a 64 bit.
Come sapete c'è ancora una mezza tragedia di tantissime applicazioni che sono state realizzate in 32 bit e non ancora in 64 bit.
Alcune di queste applicazioni, sono riuscito a farle funzionare tranquillamente facendo una piccola modifica alle directory /usr/lib e /usr/lib64
Per esempio io ho queste 2 applicazioni 32 bit che voglio avviare su 64 bit:
1. Gwhere
2. Q4wine
Scaricando 2 pacchetti rpm precompilati (forse da Mageia o Opensuse, non ricordo) ed estraendoli in una directory locale, ho constatato il loro funzionamento corretto ma facendo alcune modifiche nelle directory /usr/lib e /usr/lib64
Per far funzionare Gwhere devo inserire una directory estratta dal pacchetto (in questo caso la directory "gwhere") in /usr/lib ; eseguendolo da locale il programma si esegue correttamente.
Lo stesso vale per q4wine in cui devo inserire il file "libq4wine-core.so" in /usr/lib/64 per farlo funzionare e non in /usr/lib
Non volendo creare scompiglio a queste directory, se inserisco un symlink che porta ad una directory locale nella home ai seguenti files (verificato con un test e funziona), sapete se rischio incompatibilità e problemi futuri con aggiornamenti e altro ?
Naturalmente il discorso è rivolto a Slackware ma se sapete che possa valere anche per gli altri 8)
Ciao
Francesco bat

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 11:58
da conraid
Non fare così.
Se proprio devi (sicuro che non trovi pacchetti per slackware? q4wine c'è anche su slackbuilds.org, al limite compilatelo) usa LD_PRELOAD e LD_LIBRARY_PATH, per esempio per skype, che ha lo stesso problema, il pacchetto qui crea un binario con

Codice: Seleziona tutto

if [ -e /usr/share/skype/lib64 ];then
  LIB32=/usr/share/skype/lib
  export GCONV_PATH=$LIB32/gconv
  export QT_PLUGIN_PATH=$LIB32/plugins
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/share/skype/lib:/usr/share/skype/lib64
else
  LIB32=/usr/lib
fi
LD_PRELOAD=$LIB32/libv4l/v4l1compat.so /usr/share/skype/skype 
ho tolto la parte pulse ed una variabile per renderlo più chiaro

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 12:54
da francesco bat
Hai ragione !
Su slackbuilds ho trovato q4wine, ma non ho trovato gwhere :(
Dopo varie riflessioni avevo deciso di migrare a Tellico e abbandonare gwhere per uesti problemi, ma mi rimane una marea di cd catalogati (una 50ina o più) che non so come poter visualizzare il contenuto offline.
Dovrei riscansionarli tutti d'accapo con Tellico: un vero incubo !!! :shock:
Per questo la decisione di cercare di far funzionare a tutti i costi Gwhere, almeno per i vecchi cataloghi.
Ho provato anche la versione di windows con il wine, ma dopo l'avvio del programma non riesco a fare assolutamente nulla perchè il programma rimane bloccato :(
Ciao
Francesco bat

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 16:49
da conraid
Ma ci sono i sorgenti, puoi provare a compilarlo normalmente.

Altrimenti a 64bit per altre distribuzioni si trova
https://packages.debian.org/wheezy/amd6 ... e/download
https://launchpad.net/ubuntu/saucy/arm6 ... 3.dfsg.1-4

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 16:56
da francesco bat
Infatti !
Volevo evitare di installare da sorgenti e installare da pacchetti di distro diverse; per questo volevo eseguirlo da locale con il metodo citato.
Ma se è problematico fare la procedura che ho descritto allora installo da sorgente e da pacchetto di altre distro :|
Ciao
Francesco bat

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 17:13
da conraid
francesco bat ha scritto:Infatti !
Volevo evitare di installare da sorgenti e installare da pacchetti di distro diverse; per questo volevo eseguirlo da locale con il metodo citato.
Ma se è problematico fare la procedura che ho descritto allora installo da sorgente e da pacchetto di altre distro :|
Ciao
Francesco bat
Perdonami, ma non capisco.
Tu hai detto che stavi usando il pacchetto a 32bit di altra distribuzione. Io ti ho detto che, al limite, ne esistono anche da 64bit. Niente di più. Non devi "installare" alcun pacchetto di altre distribuzioni, mai.
Ma il mio consiglio primario è compilarti il software.

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 17:27
da francesco bat
No è chiaro.
Su Slackware se lo trovavo precompilato era meglio, altrimenti non ci sono problemi ad installarlo da sorgente :)
Per quanto riguarda gwhere c'è la versione a 32 bit per pclinuxos e non a 64 bit, ma se lui installa la directory "gwhere" in "/usr/lib" penso che dovrebbe funzionare senza problemi se lo installo su 64 bit siccome l'ho testato nella mia Home e funziona (nel pacchetto rpm non ho trovato altre cose strane se non il collegamento in "usr/bin" e "/usr/share" :)
Q4wine per pclinuxos è un problema perchè il 32 bit installa una sua libreria in "/usr/lib" mentre una versione di Mageia a 64 bit vedo nel pacchetto che lo piazza in "usr/lib64"; del resto non fa modifiche critiche (anche lui solo il file in /usr/bin e /usr/share), solo che il pacchetto è di Mageia 64 mentre la mia sarebbe PCLinuxOS 64 bit :|
Ciao
Francesco bat

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 17:32
da conraid
francesco bat ha scritto:No è chiaro.
Su Slackware se lo trovavo precompilato era meglio, altrimenti non ci sono problemi ad installarlo da sorgente :)
Per quanto riguarda gwhere c'è la versione a 32 bit per pclinuxos e non a 64 bit, ma se lui installa la directory "gwhere" in "/usr/lib" penso che dovrebbe funzionare senza problemi se lo installo su 64 bit siccome l'ho testato nella mia Home e funziona (nel pacchetto rpm non ho trovato altre cose strane se non il collegamento in "usr/bin" e "/usr/share" :)
Q4wine per pclinuxos è un problema perchè il 32 bit installa una sua libreria in "/usr/lib" mentre una versione di Mageia a 64 bit vedo nel pacchetto che lo piazza in "usr/lib64"; del resto non fa modifiche critiche (anche lui solo il file in /usr/bin e /usr/share), solo che il pacchetto è di Mageia 64 mentre la mia sarebbe PCLinuxOS 64 bit :|
Ciao
Francesco bat
Dici che è chiaro, ma poi parli di altro. Alzo le mani e rinuncio.

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 17:43
da francesco bat
Allora, se mi dici così, forse no ho capito :)
Praticamente mi stai dicendo che è meglio installare gwhere da sorgente (oltre che a slackware anche su pclinuxOS) che da un pacchetto rpm di terze parti ?
Ciao
Francesco bat

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 17:52
da conraid
francesco bat ha scritto:Allora, se mi dici così, forse no ho capito :)
Praticamente mi stai dicendo che è meglio installare gwhere da sorgente (oltre che a slackware anche su pclinuxOS) che da un pacchetto rpm di terze parti ?
Ciao
Francesco bat
no, aspetta, io parlo di slackware, non conosco pclinuxos
comunque ti do una notizia, il pacchetto debian a 64bit funziona su slackware current 64bit (non ho una 14.1 per provare). Naturalmente non l'ho "installato", ma decompresso in una directory.
q4wine c'è su SBo e se non vuoi compilarlo trovi chi lo fa per te
http://packages.slackonly.com/pub/packa ... op/q4wine/

pclinuxos non lo conosco, ma essendo linux immagino che puoi provare ugualmente il pacchetto debian ed al limite usare LDPRELOAD e LD_LIBRARY_PATH senza andare a sporcare il sistema con i link simbolici

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 19:36
da francesco bat
Grazie delle info !
Ora provo ad installare la versione di q4wine che mi hai linkato su Slackware :)
Invece c'è un particolare.
Ho notato che su Slackware avevo già installato gwhere, non riesco a ricordarmi quando ma probabilmente alcuni anni fa perchè feci qualche esperimento.
Il pacchetto che ho trovato su una directory è:
gwhere-0.2.3-i486-2sl.tgz
Non riesco a ricordarmi quando e dove l'ho preso essendo un esperimento di anni fa, ma il programma giustamente non funziona ed eseguendolo da terminale ottengo:

Codice: Seleziona tutto

bash-4.2$ gwhere
bash: /usr/bin/gwhere: File o directory non esistente
In quel periodo erano i miei primi approcci con Slackware, chissà cosa ho combinato :|
Ora provo con q4wine e faccio sapere.
Ciao
Francesco bat

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 19:39
da conraid
francesco bat ha scritto: Ho notato che su Slackware avevo già installato gwhere, non riesco a ricordarmi quando ma probabilmente alcuni anni fa perchè feci qualche esperimento.
Il pacchetto che ho trovato su una directory è:
gwhere-0.2.3-i486-2sl.tgz
Non riesco a ricordarmi quando e dove l'ho preso essendo un esperimento di anni fa, ma il programma giustamente non funziona ed eseguendolo da terminale ottengo:

Codice: Seleziona tutto

bash-4.2$ gwhere
bash: /usr/bin/gwhere: File o directory non esistente
In quel periodo erano i miei primi approcci con Slackware, chissà cosa ho combinato :|

non hai combinato niente, semplicemente stai cercando di lanciare un programma a 32 bit in una distribuzione a 64.

Re: Creare symlink in /usr/lib

Inviato: sab 30 apr 2016, 20:17
da francesco bat
Infatti !
Ora l'ho appena rimosso con:

Codice: Seleziona tutto

removepkg gwhere
Ora ho installato il wine (perchè senza di lui non funziona q4wine, ovvio :) ); ho preso il pacchetto da:
http://www.slackware.com/~alien/slackbu ... kg64/14.1/
l'ho installato con "installpkg" ed è andato tutt'ok, ma non mi funziona.
L'errore riportato è:

Codice: Seleziona tutto

bash-4.2$ winecfg
/usr/bin/winecfg: line 46: /usr/bin/wine: File o directory non esistente
Nella riga 46 vi è questo:

Codice: Seleziona tutto

if [ -x "$appdir/wine" ]; then exec "$appdir/wine" "$appname" "$@"; fi

Re: Creare symlink in /usr/lib

Inviato: dom 1 mag 2016, 1:00
da francesco bat
Forse potrebbe essere un problema che riguarda i multilib.
Essendo una cosa un pò più lunga come ho tempo ci metto mano :|
Grazie :)
Ciao
Francesco bat

Re: Creare symlink in /usr/lib

Inviato: dom 1 mag 2016, 10:10
da conraid
Sì, wine di Alien, così come quello di SBo o quello che trovi dal repository di wine (sì, Wine rilascia un pacchetto per Slackware), sono in realtà a 32bit ed hanno bisogno delle multilib, questo per far andare tutti i programmi windows.
Io mi compilo una versione solo a 64bit, quindi che funziona senza multilib, se vuoi farti il pacchetto qui c'è il build
https://github.com/conraid/SlackBuilds/tree/master/wine
però dopo ti funzionano solamente i programmi totalmente a 64bit.
Quindi dipende da cosa devi farci con wine.