Se avete problemi con l'installazione e la configurazione di Slackware64 postate qui. Non usate questo forum per argomenti che trattano la Slackware32 o generali... per quelli usate rispettivamente il forum Slackware e Gnu/Linux in genere.
Regole del forum
1) Citare sempre la versione di Slackware64 usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware64, se l'argomento è Slackware32 o generale usate rispettivamente il forum Slackware o Gnu/Linux in genere.
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.
Salve a tutti non so se ad altri è capitato, ma con la versione a 32 bit non ho mai avuto questi tipi di problemi.
Veniamo al sodo.
Dato che vorrei usare postgres e visto che per la versione a 64 bit non c'è mi sono scaricato quella a 32 dal repository di slacky.
Come vado a lanciarlo mi restituisce
Non ricordo con quanti altri programmi ho lo stesso errore,ma ne sono diversi.
Forse slackware non gestisce bene la compatibilità tra versioni diverse,tipo 32 - 64 bit ?
Scusase l'ignoranza
Ultima modifica di madtux il gio 9 dic 2010, 19:45, modificato 1 volta in totale.
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"; SLKLDFLAGS=""; LIBDIRSUFFIX=""; CHOST="i486"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"; SLKLDFLAGS=""; LIBDIRSUFFIX=""; CHOST="i686"
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"; SLKLDFLAGS="-L/usr/lib64"; LIBDIRSUFFIX="64"; CHOST="x86_64"
fi
Prendi tutto l'occorrente dalla directory src di postgresql, nel repository 32 bit, e nello SlackBuild cambia la variabile ARCH, da i486 a x86_64. Lancia lo SlackBuild con
e aspetta finchè la compilazione e la creazione del pacchetto è terminata. Alla fine avrai il tuo pacchetto a 64 bit.
Non c'è bisogno di usare le multilib quando un software si può compilare per una determinata architettura. Le multilib si usano quando il software è solo per una architettura diversa dalla vostra, 32 bit al posto di 64 bit, come per esempio Skype che essendo proprietario e non distribuendo codice sorgente non può essere compilato a 64 bit.
Xunyl ha scritto:Non puoi installare programmi a 32 bit su Slack64, a meno che non crei un sistema multilib installando le librerie da qui: http://connie.slackware.com/~alien/multilib/
Sbagliato. Slackware64 supporta l'esecuzione di binari a 32 bit (è un'opzione del kernel). Se poi il binario a 32 bit richiede librerie di runtime a 32 bit, allora sì che bisogna passare ad un sistema multilib.
atomix600 ha scritto:
Non c'è bisogno di usare le multilib quando un software si può compilare per una determinata architettura.
Of course, quando si parla di compilazione da codice sorgente (SlackBuild e non). Quando invece si parla di pacchetti già compilati (se uno non vuole/non sa compilare) il discorso cambia.
414N ha scritto:Sbagliato. Slackware64 supporta l'esecuzione di binari a 32 bit (è un'opzione del kernel). Se poi il binario a 32 bit richiede librerie di runtime a 32 bit, allora sì che bisogna passare ad un sistema multilib.
Grazie per la delucidazione. Offtopic:Sai per caso se quest'opzione è abilitata di default nel .config di pat o se bisogna ricompilare il kernel?
Xunyl ha scritto:Offtopic:Sai per caso se quest'opzione è abilitata di default nel .config di pat o se bisogna ricompilare il kernel?
Offtopic:È già abilitata di default nel kernel, anche perché installando i pacchetti di compatibilità a 32 bit non potresti comunque eseguire i binari a 32 bit se non lo fosse.
$> grep IA32 config-generic-2.6.35.7
CONFIG_IA32_EMULATION=y
# CONFIG_IA32_AOUT is not set
$> grep IA32 config-huge-2.6.35.7
CONFIG_IA32_EMULATION=y
# CONFIG_IA32_AOUT is not set
Quindi direi di si.
La cosa strana è che l'output postato da madtux generalmente si riferisce proprio a quei kernel che non hanno tale supporto abilitato.
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama