Slackbuild compilato 64 bit

Postate qui se avete consigli per migliorare i pacchetti disponibili in questo sito o se avete problemi con installazione, funzionamento o altro.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il nome del pacchetto.
2) Specificare se discussione/suggerimento o richiesta d'aiuto.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
leomacci
Linux 0.x
Linux 0.x
Messaggi: 37
Iscritto il: mer 18 nov 2009, 10:18

Slackbuild compilato 64 bit

Messaggio da leomacci »

Come si fa a sapere se uno slackbuild creerà un pacchetto a 64 bit escludendo ovviamente gli slackbuild tipo quello di Googleearth lo che dichiarano chiaramente .
Partendo dallo slackbuild di un pacchetto nel repository a 32 bit es.Simpleburn è possibile compilarlo a 64 bit?

Avatar utente
boh
Linux 4.x
Linux 4.x
Messaggi: 1027
Iscritto il: ven 16 set 2005, 0:00
Slackware: 14.2 (x64)
Kernel: 4.4.111
Desktop: KDE 4.14.32
Località: Milano
Contatta:

Re: Slackbuild compilato 64 bit

Messaggio da boh »

In questa parte iniziale hai le seguenti dichiarazioni di variabili:

Codice: Seleziona tutto

CWD=`pwd`
OUTPUT=${OUTPUT:-$CWD}
PKGNAME=simpleburn
TMP=${TMP:-/tmp/txz/$PKGNAME}
PKG=$TMP/package
VERSION=1.5.2.1
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
TAG=${TAG:-sl}
Nella riga in cui viene dichiarata la variabile ARCH sostituisci i486 con x86_64.
Salvo casi particolari dovrebbe essere sufficiente :D
Se ho detto qualche cavolata, qualcuno mi corregga ;)

EDIT: cambia anche la versione, se ne stai compilando una differente da quella specificata :)
"Be yourself. Everyone else is already taken." ~ Oscar Wilde

leomacci
Linux 0.x
Linux 0.x
Messaggi: 37
Iscritto il: mer 18 nov 2009, 10:18

Re: Slackbuild compilato 64 bit

Messaggio da leomacci »

Sul sito Slackbuild.org ho notato che per lo slackbuild di Flash Player plugin esiste un sorgente a 32 bit e uno a 64 bit:e un caso particolare?

Avatar utente
boh
Linux 4.x
Linux 4.x
Messaggi: 1027
Iscritto il: ven 16 set 2005, 0:00
Slackware: 14.2 (x64)
Kernel: 4.4.111
Desktop: KDE 4.14.32
Località: Milano
Contatta:

Re: Slackbuild compilato 64 bit

Messaggio da boh »

Sono due sorgenti differenti, ma lo slackbuild è unico, quindi scarica il sorgente di tuo interesse e avvia lo slackbuild :)
Su Slackbuild.org inoltre capita spesso (se non addirittura sempre) che l'architettura sia "estrapolata" tramite il comdando

Codice: Seleziona tutto

uname -m
quindi non dovrai neanche settarla ;)

Per flash comunque ti consiglio di usare i pacchetti di alienbob, già pronti per essere installati!
Il link è questo: http://connie.slackware.com/~alien/slac ... er-plugin/
"Be yourself. Everyone else is already taken." ~ Oscar Wilde

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: Slackbuild compilato 64 bit

Messaggio da 414N »

leomacci ha scritto:Come si fa a sapere se uno slackbuild creerà un pacchetto a 64 bit escludendo ovviamente gli slackbuild tipo quello di Googleearth lo che dichiarano chiaramente .
Partendo dallo slackbuild di un pacchetto nel repository a 32 bit es.Simpleburn è possibile compilarlo a 64 bit?
Dipende dal programma in questione e da quello che hai a disposizione per fare il pacchetto.
Partiamo da quello che puoi avere a disposizione:
  • Pacchetto di sorgenti: 9 volte su 10 è possibile compilarli anche a 64 bit. Alcuni programmi, nonostante siano scaricabili sotto forma di sorgenti, non possono essere compilati a 64 bit perché la loro funzionalità è tipica e utile solo a 32 bit oppure perché utilizzano codice assembly a 32 bit che non è ancora stato tradotto nella corrispondente controparte a 64 bit. Vedi per esempio wine (wine64 può eseguire solo i programmi Win64, quindi non serve per i programmi Win32) e zsnes (non compila a 64 bit per via di codice assembly a 32 bit non tradotto).
  • Pacchetto di binari precompilati: in questo caso, o trovi il pacchetto a 64 bit o stai fresco (vedi Skype).
Per capire se un programma è compilabile a 64 bit oppure no, comunque, puoi sempre provare a lanciare la compilazione e vedere se va a buon fine o meno. Nel caso andasse male, ti conviene cercare informazioni per capire se si è verificato un errore per mancanza di un flag di compilazione (il famigerato -fPIC, che andrebbe tolto da quasi tutti gli SlackBuild esistenti perché abilitato automaticamente dove serve per la maggioranza dei programmi) oppure per una lacuna del programma stesso verso il supporto dei 64 bit. In quest'ultimo caso puoi fare poco, a meno che tu non sappia dove mettere le mani per aggiungere questo supporto.
leomacci ha scritto:Sul sito Slackbuild.org ho notato che per lo slackbuild di Flash Player plugin esiste un sorgente a 32 bit e uno a 64 bit:e un caso particolare?
È un caso di pacchetto di binari precompilati.
Sappi, comunque, che non ti serve modificare a mano tutti gli SlackBuild che ti capitano a tiro per impostare l'architettura a x86_64.
Come ti ha già accennato boh, le ultime versioni degli SlackBuild su sbo rilevano automaticamente l'architettura se ARCH non è preimpostata.
Comunque, per non saper né leggere né scrivere, la seguente riga bash:

Codice: Seleziona tutto

ARCH=${ARCH:-i486}
viene interpretata come segue: imposta ARCH al contenuto di ARCH se già definita, altrimenti a i486.
Per definire la variabile ARCH prima del lancio di uno SlackBuild hai sostanzialmente due modi:
  • Definizione al volo:

    Codice: Seleziona tutto

    ARCH=x86_64 su -c ./ioahsdiosa.SlackBuild
    
    che vale solo per quello che viene lanciato in quella riga e basta, senza modificare l'ambiente di esecuzione della shell;
  • Definizione "globale": aggiungi al tuo ~/.bashrc e/o ~/.bash_profile

    Codice: Seleziona tutto

    export ARCH=x86_64
    
    che rende disponibile a tutte le shell che lanci la variabile ARCH (praticamente una modifica permanente dell'ambiente).

Rispondi