Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.
Regole del forum
1) Citare sempre la versione di Slackware 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 Slackware, se l'argomento è generale usate il forum 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.
VERSION=6.8.2
export ARCH=${ARCH:-athlonxp}
BUILD=${BUILD:-1pk}
if [ "$ARCH" = "i386" ]; then
SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
elif [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mcpu=i686"
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2"
elif [ "$ARCH" = "athlonxp" ];then
SLKCFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer -ffast-math -mmmx -m3dnow -msse -mfpmath=sse"
fi
.................
ho modificato la variabile ARCH e ho aggiunto all' if la parte x l'archittetura che ho impostato...
mi sorge un dubbio... continuando a leggere lo slackbuilt trovo
............................................
( cd extras/freetype2
CFLAGS="$SLKCFLAGS" make setup CFG="--prefix=/usr $ARCH-slackware-linux"
make
# This only needs to go to the main system for now
make install
)
ldconfig
...............................
il fatto è che nel mio sistema trovo solo una dir che porta dicitura i486-slackware-linux ma non una athlonxp-slackware-linux... questo vorrebe dire che devo ricompilare anche gcc e le libc con questa arch???
o posso fare un link a quella che ho???
Ciao,
lascia perdere le modifiche ad "arch" lascia i486.....c'è un post a riguardo che spiega molto bene il motivo di questa scelta...cercalo perchè la questione è lunghetta. Se vuoi ottimizzare per la tua architettura modifica solo le cflags relative all'architetettiura i486, poi lanci lo sclakbuild e alla fine, semplicemente, rinomini i pacchetti come vuoi tu! Have a nice day
il fatto è che gli slackbuild ERRONEAMANETE usano l'ARCH come target. la cosa migliore che mi viene in mente sarebbe aggiungere una nuova variabile TARGET e lasciarla =i486 e nei make, sostituire $ARCH-slackware-linux con $TARGET-slackware-linux.
ok grazie x le risposte...
penso che farò come ha detto useless anche xchè ho visto che lo slack.built di kde fà proprio così... usa una variabile $ARCH e una variabile $TARGET...
mi è giunta voce che gcc nonn suporta l'arch athlon-xp voi sapate qualcosa in merito???
il fatto è che gli slackbuild ERRONEAMANETE usano l'ARCH come target. la cosa migliore che mi viene in mente sarebbe aggiungere una nuova variabile TARGET e lasciarla =i486 e nei make, sostituire $ARCH-slackware-linux con $TARGET-slackware-linux.
Spiegaci bene sta cosa...
O c'è qualche sito illuminante ?
il fatto è che l'arch viene utilizzata negli slackbuild + nuovi x impostare i cflags, ma anche x individuare il compilatore, quando questo scopo apparterrebbe al target. infatti un compilatore unico (un target insomma, tipo i486) può generare codice x diverse arch (i486, i686, athlon-xp, ecc...). quindi la cosa migliore è avere 2 variabili, eventualmente con target che assume valori uguali o diversi a seconda di arch: se arch=i386, i486, ecc... arch vale sempre e comunque i486, se poi uno ha tipo un crosscompiler x sparc (come me ) può avere un arch supersparc che imposta un target sparc, ad esempio.
spero di essere stato chiaro!
Azz... e io che pensavo che Hegel fosse lo scrittore
più ermetico... Pertanto che cosa metteresti
nello SlackBuild? Così vedo come viene fuoti
in pratica...
Altra domanda... e faccio i link a ccache mettendo
ln -s /usr/bin/ccache i686-slackware-linux-gc
invece di i486, se do un make mi salta fuori:
checking for i686-slackware-linux-gcc... i686-slackware-linux-gcc
checking for C compiler default output file name... configure: error: C compiler cannot create executables
See `config.log' for more details.
ok, non sono stato chiaro . xò ci hai preso, e a quel punto l'ultima riga non ha + molto senso (in realtà ne ha: dovresti specificare anche --host e --build. in effetti se ci hai fatto caso, spesso configure avverte "warning: you should use --target..."). comunque fai molto prima come ha detto lorys, con un solo appunto:
TARGET=i486, senza $
System types:
--build=BUILD configure for building on BUILD [guessed]
--host=HOST cross-compile to build programs to run on HOST [BUILD]
--target=TARGET configure for building compilers for TARGET [HOST]
Se voglio fare un pacchetto e non mi serve il cross-compiling (ho trovato un how-to sul tema)
e devo farlo sul mio i686 per il mio 686,
build host e target dovrebbero risultare uguali...
Giusto oppure ho sbagliato tutto?
giusto, infatti specificare $ARCH-slackware-linux alla fine delle opzioni ha proprio quell'effetto.
anche se credo che ormai tu abbia capito, ricapitolo:
- build -> macchina sulla quale si compila
- host -> macchina su cui girerà il programma compilato
- target -> macchina x cui il compilatore compilato creerà codice. in effetti non è molto utile x ciò che non è un compilatore.