Aggiornamento GCC
Moderatore: Staff
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.
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.
- Yellowhat
- Linux 2.x

- Messaggi: 218
- Iscritto il: mer 26 dic 2007, 16:58
- Slackware: Current
- Località: Modena
Aggiornamento GCC
Navigando su internet ho scoperto che è uscita la nuova versione di GCC, la 4.3.0, ora è installato su slackware 12.1 la 4.2.3.
Secondo voi il lavoro da fare per adattare questo slackbuild http://repository.slacky.eu/slackware-1 ... SlackBuild alla nuova versione, è impegnativo?
Avrò problemi con i pacchetti compilati con la versione precedente?
Grazie
Secondo voi il lavoro da fare per adattare questo slackbuild http://repository.slacky.eu/slackware-1 ... SlackBuild alla nuova versione, è impegnativo?
Avrò problemi con i pacchetti compilati con la versione precedente?
Grazie
Ultima modifica di Yellowhat il gio 22 mag 2008, 22:24, modificato 2 volte in totale.
- conraid
- Staff

- Messaggi: 13630
- Iscritto il: gio 14 lug 2005, 0:00
- Nome Cognome: Corrado Franco
- Slackware: current64
- Desktop: kde
- Località: Livorno
- Contatta:
Re: Aggiornamento GCC
Più facile il contrarioYellowhat ha scritto: Avrò problemi con i pacchetti compilati con la versione precedente?
- Yellowhat
- Linux 2.x

- Messaggi: 218
- Iscritto il: mer 26 dic 2007, 16:58
- Slackware: Current
- Località: Modena
Re: Aggiornamento GCC
E' se aggiungessi delle FLAGS per il mio processore?
- Yellowhat
- Linux 2.x

- Messaggi: 218
- Iscritto il: mer 26 dic 2007, 16:58
- Slackware: Current
- Località: Modena
Re: Aggiornamento GCC
Ho trovato un'altro slackbuild sembra più completo.
http://ftp.sh.cvut.cz/MIRRORS/slax/sour ... SlackBuild
http://ftp.sh.cvut.cz/MIRRORS/slax/sour ... SlackBuild
- albatros
- Iper Master

- Messaggi: 2098
- Iscritto il: sab 4 feb 2006, 13:59
- Kernel: 6.18.0
- Desktop: gnome and lxqt
- Distribuzione: Ubuntu 24.04 & FC 41
- Località: Darmstadt - Germania
Re: Aggiornamento GCC
Attenzione, c'era un possibile problema con gcc 4.3.0:
http://lwn.net/Articles/272048/
Il kernel 2.6.25 credo risolva questo problema, non so (verifica) se lo abbiano risolto anche le ultime versioni 2.6.24.x.
http://lwn.net/Articles/272048/
Il kernel 2.6.25 credo risolva questo problema, non so (verifica) se lo abbiano risolto anche le ultime versioni 2.6.24.x.
- Yellowhat
- Linux 2.x

- Messaggi: 218
- Iscritto il: mer 26 dic 2007, 16:58
- Slackware: Current
- Località: Modena
Re: Aggiornamento GCC
Ho utilizzato lo slackbuild di Pat per la 4.2.3 (ftp://ftp.slackware.com/pub/slackware/s ... SlackBuild), commentando solo la parte della patch, tutto fila lisco, mi crea i pacchetti, vado a vedere e sono tutti di al massimo qualche kilobyte
Re: Aggiornamento GCC
E' uscita la 4.2.4.
http://www.ossblog.it/post/4135/gcc-si- ... rsione-424
http://www.ossblog.it/post/4135/gcc-si- ... rsione-424
- Yellowhat
- Linux 2.x

- Messaggi: 218
- Iscritto il: mer 26 dic 2007, 16:58
- Slackware: Current
- Località: Modena
Re: Aggiornamento GCC
Ho provato anche con la 4.2.4, stesso risultato. Vi posto lo slackbuild così potete vedere dove sbaglio.
Codice: Seleziona tutto
#!/bin/sh
# Heavily based on the Slackware 12.1 SlackBuild
# http://gcc.gnu.org/
# Packager Yellowhat - yellowhat46@gmail.com - Date 26/05/2008
# Root
(( $UID != 0 )) && echo "You must be root." && exit 1;
# Variabili della directory temporanea
CWD=`pwd`
if ["$TMP" = ""]; then
TMP=/tmp/tgz
fi
VERSION=4.2.4
ARCH=${ARCH:-x86}
BUILD=1
# DESTDIR
PKG1=$TMP/package-gcc
PKG2=$TMP/package-gcc-g++
PKG3=$TMP/package-gcc-gfortran
PKG4=$TMP/package-gcc-gnat
PKG5=$TMP/package-gcc-java
PKG6=$TMP/package-gcc-objc
PKG7=$TMP/package-gcc-g++-gch
# Sorgenti
SOURCE=http://gcc-ca.internet.bs/releases/gcc-$VERSION/gcc-$VERSION.tar.bz2
if [ ! -e gcc-$VERSION.tar.bz2 ]; then
wget -c $SOURCE
fi
# Slackware Flags per GCC
case $ARCH in
"i686") SLKCFLAGS="-O3 -march=i686 -pipe -fomit-frame-pointer" ; SLKLIBDIR=lib ; CHOST=i486 ;;
"x86_64_slamd64") SLKCFLAGS="athlon64 -O2 -pipe -msse3" ; SLKLIBDIR=lib64 ; CHOST=x86_64 ;; # Multilib /lib and /lib64
"x86_64") SLKCFLAGS="athlon64 -O2 -pipe -msse3" ; SLKLIBDIR=lib ; CHOST=x86_64 ;; # Pure 64bit distro
"x86") SLKCFLAGS="-march=athlon -O2 -pipe -msse3" ; SLKLIBDIR=lib ; CHOST=i686 ;;
esac
# Target per configure
TARGET=$CHOST-slackware-linux
# This is the main DESTDIR target:
PKG1=$TMP/package-gcc
# These are the directories to build other packages in:
PKG2=$TMP/package-gcc-g++
PKG3=$TMP/package-gcc-gfortran
PKG4=$TMP/package-gcc-gnat
PKG5=$TMP/package-gcc-java
PKG6=$TMP/package-gcc-objc
PKG7=$TMP/package-gcc-g++-gch
# Clear the build locations:
if [ -d $TMP ]; then
rm -rf $TMP
fi
mkdir -p $PKG{1,2,3,4,5,6,7}/usr/doc/gcc-$VERSION
# Insert package descriptions:
mkdir -p $PKG{1,2,3,4,5,6,7}/install
cat $CWD/slack-desc.gcc > $PKG1/install/slack-desc
cat $CWD/slack-desc.gcc-g++ > $PKG2/install/slack-desc
cat $CWD/slack-desc.gcc-gfortran > $PKG3/install/slack-desc
cat $CWD/slack-desc.gcc-gnat > $PKG4/install/slack-desc
cat $CWD/slack-desc.gcc-java > $PKG5/install/slack-desc
cat $CWD/slack-desc.gcc-objc > $PKG6/install/slack-desc
# cat $CWD/slack-desc.gcc-g++-gch > $PKG7/install/slack-desc
# Estrazione sorgenti
cd $TMP
tar xjvf $CWD/gcc-$VERSION.tar.bz2
# Documentazione
cd gcc-$VERSION
# Smite the fixincludes:
# zcat $CWD/gcc-no_fixincludes.diff.gz | patch -p1 || exit 1
# Cambiare i permessi
chown -R root:root
find . -perm 777 -exec chmod 755 {} \;
find . -perm 775 -exec chmod 755 {} \;
find . -perm 754 -exec chmod 755 {} \;
find . -perm 664 -exec chmod 644 {} \;
mkdir -p $PKG1/usr/doc/gcc-$VERSION
# Only the most recent ChangeLog... shouldn't be too big. :)
cp -a COPYING* ChangeLog ChangeLog.tree-ssa LAST_UPDATED MAINTAINERS NEWS README* $PKG1/usr/doc/gcc-$VERSION
(
mkdir -p $PKG1/usr/doc/gcc-${VERSION}/gcc
( cd gcc
cp -a ABOUT* COPYING* LANG* ONEWS README* $PKG1/usr/doc/gcc-$VERSION/gcc
mkdir -p $PKG3/usr/doc/gcc-${VERSION}/gcc/fortran
( cd fortran
cp -a ChangeLog $PKG3/usr/doc/gcc-$VERSION/gcc/fortran/ChangeLog
)
mkdir -p $PKG4/usr/doc/gcc-${VERSION}/gcc/ada
( cd ada
cp -a ChangeLog ChangeLog.tree-ssa $PKG4/usr/doc/gcc-$VERSION/gcc/ada
)
mkdir -p $PKG5/usr/doc/gcc-${VERSION}/gcc/java
( cd java
cp -a ChangeLog ChangeLog.tree-ssa $PKG5/usr/doc/gcc-${VERSION}/gcc/java
)
mkdir -p $PKG6/usr/doc/gcc-${VERSION}/gcc/objc
( cd objc
cp -a ChangeLog README $PKG6/usr/doc/gcc-${VERSION}/gcc/objc
)
)
mkdir -p $PKG3/usr/doc/gcc-${VERSION}/libgfortran
( cd libgfortran
cp -a ChangeLog $PKG3/usr/doc/gcc-${VERSION}/libgfortran/ChangeLog
)
mkdir -p $PKG3/usr/doc/gcc-${VERSION}/libada
( cd libada
cp -a ChangeLog $PKG3/usr/doc/gcc-${VERSION}/libada
)
mkdir -p $PKG5/usr/doc/gcc-${VERSION}/libffi
( cd libffi
cp -a ChangeLog ChangeLog.libgcj ChangeLog.v1 \
LICENSE README $PKG5/usr/doc/gcc-${VERSION}/libffi
)
mkdir -p $PKG5/usr/doc/gcc-${VERSION}/libjava
( cd libjava
cp -a COPYING* ChangeLog HACKING LIBGCJ_LICENSE NEWS README THANKS $PKG5/usr/doc/gcc-${VERSION}/libjava
)
mkdir -p $PKG1/usr/doc/gcc-${VERSION}/libmudflap
( cd libmudflap
cp -a ChangeLog $PKG1/usr/doc/gcc-${VERSION}/libmudflap
)
mkdir -p $PKG1/usr/doc/gcc-${VERSION}/libgomp
( cd libgomp
cp -a ChangeLog $PKG1/usr/doc/gcc-${VERSION}/libgomp
)
mkdir -p $PKG6/usr/doc/gcc-${VERSION}/libobjc
( cd libobjc
cp -a ChangeLog README README.threads THREADS THREADS.MACH $PKG6/usr/doc/gcc-${VERSION}/libobjc
)
mkdir -p $PKG2/usr/doc/gcc-${VERSION}/libstdc++-v3
( cd libstdc++-v3
cp -a ChangeLog README $PKG2/usr/doc/gcc-${VERSION}/libstdc++-v3
cp -a docs/html/faq $PKG2/usr/doc/gcc-${VERSION}/libstdc++-v3
)
)
# build gcc
# ( mkdir gcc.build.lnx;
# cd gcc.build.lnx;
# If enough people need "treelang" support for it may be considered.
# --enable-languages=ada,c,c++,fortran,java,objc,treelang
# I think it's incorrect to include this option (as it'll end up set
# to i486 on x86 platforms), and we want to tune the binary structure
# for i686, as that's where almost all of the optimization speedups
# are to be found.
# Correct me if my take on this is wrong.
# --with-cpu=$ARCH
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
../gcc-$VERSION/configure --prefix=/usr \
--enable-shared \
--enable-languages=ada,c,c++,fortran,java,objc \
--enable-threads=posix \
--enable-__cxa_atexit \
--disable-checking \
--with-gnu-ld \
--verbose \
--with-arch=$ARCH \
--target=${TARGET} \
--host=${TARGET}
# Start the build:
# Include all debugging info (for now):
make -j3 bootstrap;
( cd gcc
make -j3 gnatlib GNATLIBCFLAGS="$SLKCFLAGS"
# This wants a shared -ladd2line?
make gnatlib-shared
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
make -j3 gnattools
)
make info
# Set GCCCHECK=something to run the tests
if [ ! -z $GCCCHECK ]; then
make -j3 check
fi
make install DESTDIR=$PKG1
# Be sure the "specs" file is installed.
if [ ! -r $PKG1/usr/lib/gcc/${ARCH}-slackware-linux/${VERSION}/specs ]; then
cat stage1-gcc/specs > $PKG1/usr/lib/gcc/${ARCH}-slackware-linux/${VERSION}/specs
fi
# make ada.install-common DESTDIR=$PKG1
# make install-gnatlib DESTDIR=$PKG1
make -i install-info DESTDIR=$PKG1
chmod 755 $PKG1/usr/lib/libgcc_s.so.1
# This is provided by binutils, so delete it here:
rm -f $PKG1/usr/lib/libiberty.a
# Fix stuff up:
( cd $PKG1/usr/info ; rm dir ; gzip -9 * )
( cd $PKG1
mkdir -p lib
cd lib
ln -sf /usr/bin/cpp .
)
( cd $PKG1/usr/bin
mv g++ g++-gcc-$VERSION
mv gcc gcc-$VERSION
mv ${TARGET}-gfortran gfortran-gcc-$VERSION
ln -sf g++-gcc-$VERSION g++
ln -sf gcc-$VERSION gcc
ln -sf g++ c++
ln -sf gcc cc
ln -sf gcc-$VERSION ${TARGET}-gcc
ln -sf gcc-$VERSION ${TARGET}-gcc-$VERSION
ln -sf gcj ${TARGET}-gcj
ln -sf gcjh ${TARGET}-gcjh
ln -sf g++-gcc-$VERSION ${TARGET}-c++
ln -sf g++-gcc-$VERSION ${TARGET}-g++
ln -sf gfortran-gcc-$VERSION gfortran
ln -sf gfortran-gcc-$VERSION ${TARGET}-gfortran
ln -sf gfortran-gcc-$VERSION ${TARGET}-gfortran-$VERSION
ln -sf gfortran-gcc-$VERSION ${TARGET}-g95
ln -sf gfortran g95
ln -sf gfortran f95
ln -sf gfortran-gcc-$VERSION ${TARGET}-g77
ln -sf gfortran g77
ln -sf gfortran f77
)
( cd $PKG1/usr/man
gzip -9 */*
cd man1
ln -sf g++.1.gz c++.1.gz
ln -sf gcc.1.gz cc.1.gz
)
# Ottenere il log
( 2>&1 | tee $CWD/../gcc.build.log
)
# gcc-g++:
( cd $PKG2
mkdir -p usr/bin
mv $PKG1/usr/bin/*++* usr/bin
mkdir -p usr/include
mv $PKG1/usr/include/c++ usr/include
mkdir -p usr/lib
mv $PKG1/usr/lib/*++* usr/lib
mkdir -p usr/libexec/gcc/$TARGET/$VERSION
mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/cc1plus usr/libexec/gcc/$TARGET/$VERSION/cc1plus
mkdir -p usr/man/man1
mv $PKG1/usr/man/man1/*++* usr/man/man1
)
# gcc-gfortran:
( cd $PKG3
mkdir -p usr/bin
mv $PKG1/usr/bin/*gfortran* usr/bin
mv $PKG1/usr/bin/*95* usr/bin
mv $PKG1/usr/bin/*77* usr/bin
# Doesn't this seem like a logical idea?
( cd usr/bin ; ln -sf gfortran-gcc-${VERSION} fortran )
mkdir -p usr/info
mv $PKG1/usr/info/gfortran* usr/info
mkdir -p usr/lib
mv $PKG1/usr/lib/libgfortran* usr/lib
mkdir -p usr/lib/gcc/$TARGET/$VERSION
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/finclude usr/lib/gcc/$TARGET/$VERSION
mkdir -p usr/libexec/gcc/$TARGET/$VERSION
mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/f951 usr/libexec/gcc/$TARGET/$VERSION/f951
mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/libgfortran* usr/libexec/gcc/$TARGET/$VERSION
mkdir -p usr/man/man1
mv $PKG1/usr/man/man1/gfortran* usr/man/man1
)
# gcc-gnat:
( cd $PKG4
mkdir -p usr/bin
mv $PKG1/usr/bin/gnat* usr/bin
mv $PKG1/usr/bin/gpr* usr/bin
mkdir -p usr/info
mv $PKG1/usr/info/gnat* usr/info
mkdir -p usr/libexec/gcc/$TARGET/$VERSION
mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/gnat1 usr/libexec/gcc/$TARGET/$VERSION
mkdir -p usr/lib/gcc/$TARGET/$VERSION
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/adainclude usr/lib/gcc/$TARGET/$VERSION
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/adalib usr/lib/gcc/$TARGET/$VERSION
)
# gcc-java:
( cd $PKG5
mkdir -p usr/bin
mv $PKG1/usr/bin/addr2name.awk usr/bin
# mv $PKG1/usr/bin/fastjar usr/bin
mv $PKG1/usr/bin/gappletviewer usr/bin
mv $PKG1/usr/bin/*gcj* usr/bin
mv $PKG1/usr/bin/gij usr/bin
mv $PKG1/usr/bin/gjarsigner usr/bin
mv $PKG1/usr/bin/gjnih usr/bin
mv $PKG1/usr/bin/gkeytool usr/bin
mv $PKG1/usr/bin/grepjar usr/bin
mv $PKG1/usr/bin/grmic usr/bin
mv $PKG1/usr/bin/grmiregistry usr/bin
mv $PKG1/usr/bin/jar usr/bin
mv $PKG1/usr/bin/jcf-dump usr/bin
mv $PKG1/usr/bin/jv-* usr/bin
mv $PKG1/usr/bin/rmi* usr/bin
mkdir -p usr/include
mv $PKG1/usr/include/ffi.h usr/include
mkdir -p usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/jawt.h usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/ffi.h usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/ffitarget.h usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/jawt_md.h usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/jni.h usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/jni_md.h usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/jvmpi.h usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/libffi usr/lib/gcc/$TARGET/$VERSION/include
mkdir -p usr/info
mv $PKG1/usr/info/gcj.* usr/info
# mv $PKG1/usr/info/fastjar.* usr/info
mkdir -p usr/lib
mv $PKG1/usr/lib/libffi* usr/lib
mv $PKG1/usr/lib/gcj* usr/lib
mv $PKG1/usr/lib/libgcj* usr/lib
mv $PKG1/usr/lib/libgij* usr/lib
mv $PKG1/usr/lib/lib-org* usr/lib
mv $PKG1/usr/lib/security usr/lib
mkdir -p usr/lib/pkgconfig
mv $PKG1/usr/lib/pkgconfig/libgcj*.pc usr/lib/pkgconfig
rmdir $PKG1/usr/lib/pkgconfig 2> /dev/null
mkdir -p usr/libexec/gcc/$TARGET/$VERSION
mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/jc1 usr/libexec/gcc/$TARGET/$VERSION
mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/jvgenmain usr/libexec/gcc/$TARGET/$VERSION
mkdir -p usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/gcj usr/lib/gcc/$TARGET/$VERSION/include
mkdir -p usr/man/man1
mv $PKG1/usr/man/man1/gcj.1.gz usr/man/man1
mv $PKG1/usr/man/man1/gcjh.1.gz usr/man/man1
mv $PKG1/usr/man/man1/gcj-dbtool.1.gz usr/man/man1
mv $PKG1/usr/man/man1/gij.1.gz usr/man/man1
mv $PKG1/usr/man/man1/gjnih.1.gz usr/man/man1
mv $PKG1/usr/man/man1/grmic.1.gz usr/man/man1
mv $PKG1/usr/man/man1/grmiregistry.1.gz usr/man/man1
mv $PKG1/usr/man/man1/jcf-dump.1.gz usr/man/man1
mv $PKG1/usr/man/man1/jv-convert.1.gz usr/man/man1
mv $PKG1/usr/man/man1/jv-scan.1.gz usr/man/man1
mkdir -p usr/share
mv $PKG1/usr/share/java usr/share
)
# gcc-objc:
( cd $PKG6
mkdir -p usr/lib
mv $PKG1/usr/lib/libobjc* usr/lib
mkdir -p usr/libexec/gcc/$TARGET/$VERSION
mv $PKG1/usr/libexec/gcc/$TARGET/$VERSION/cc1obj usr/libexec/gcc/$TARGET/$VERSION
mkdir -p usr/lib/gcc/$TARGET/$VERSION/include
mv $PKG1/usr/lib/gcc/$TARGET/$VERSION/include/objc usr/lib/gcc/$TARGET/$VERSION/include
)
## NOTE: Thought about this, because the precompiled headers are so large.
## Probably easier to keep everything together, though.
## gcc-g++-gch (precompiled c++ headers)
#( cd $PKG7
# mkdir -p usr/include/c++/$VERSION/$TARGET/bits
# mv $PKG2/usr/include/c++/$VERSION/$TARGET/bits/stdc++.h.gch usr/include/c++/$VERSION/$TARGET/bits
#)
# Filter all .la files (thanks much to Mark Post for the sed script):
( cd $TMP
for file in $(find . -type f -name "*.la") ; do
cat $file | sed -e 's%-L/gcc-[[:graph:]]* % %g' > $TMP/tmp-la-file
cat $TMP/tmp-la-file > $file
done
rm $TMP/tmp-la-file
)
## Strip bloated binaries and libraries:
for dir in $PKG{1,2,3,4,5,6}; do
( cd $dir
find . -name "lib*so*" -exec strip --strip-unneeded "{}" \;
find . -name "lib*a" -exec strip -g "{}" \;
strip --strip-unneeded usr/bin/* 2> /dev/null
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
)
done
( cd $PKG1
makepkg -l y -c n $CWD/../gcc-$VERSION-$ARCH-$BUILD.tgz )
( cd $PKG2
makepkg -l y -c n $CWD/../gcc-g++-$VERSION-$ARCH-$BUILD.tgz )
( cd $PKG3
makepkg -l y -c n $CWD/../gcc-gfortran-$VERSION-$ARCH-$BUILD.tgz )
( cd $PKG4
makepkg -l y -c n $CWD/../gcc-gnat-$VERSION-$ARCH-$BUILD.tgz )
( cd $PKG5
makepkg -l y -c n $CWD/../gcc-java-$VERSION-$ARCH-$BUILD.tgz )
( cd $PKG6
makepkg -l y -c n $CWD/../gcc-objc-$VERSION-$ARCH-$BUILD.tgz )
#( cd $PKG7
# makepkg -l y -c n $CWD/../gcc-g++-gch-$VERSION-$ARCH-$BUILD.tgz )
echo
echo "Slackware GCC package build complete!"
echo
- Yellowhat
- Linux 2.x

- Messaggi: 218
- Iscritto il: mer 26 dic 2007, 16:58
- Slackware: Current
- Località: Modena
Re: Aggiornamento GCC
Finalmente sono riuscito a creare i pacchetti gcc ed installarli, il problema che avevo riguardava la riga:
--with-arch=$ARCH in --with-arch=$CHOST
--with-arch=$ARCH in --with-arch=$CHOST