Pagina 1 di 1

QT4 & SlackBuild [RISOLTO]

Inviato: mar 6 ott 2009, 21:09
da tgmx
Ciao Ragazzi,
oggi mi sono accorto della nuova versione delle QT4 (4.5.3) e mi sono creato il pacchetto per la Slack 12.2 utilizzando lo SlackBuild delle qt4-4.5.2 presente su slacky.
Di quello ho modificato solamente la versione (da 4.5.2 a 4.5.3) e il percorso di installazione (da /opt/qt4 a /opt/qt4-4.5.3).
Tutto è andato come al solito ma alla fine nel pacchetto era finita una directory che non doveva.

In pratica in /opt/qt4_static tempo fa avevo installato la versione delle qt4 compilate in modalita "-static" direttamente da sorgenti.

Non capisco perchè alla fine, dopo aver eseguito lo SlackBuild, mi sono ritrovato nel pacchetto creato anche la directory /opt/qt4_static ... :?

Questo qui sotto è lo SlackBuild modificato da me:

Codice: Seleziona tutto

#!/bin/sh
# Heavily based on the Slackware 12.2 SlackBuild
# http://trolltech.com
# Packagers Andrea Sciucca ( gohanz at infinito.it)
# http://www.slacky.it
# Required: Postgresql, Unixodbc

CWD=`pwd`
TMP=${TMP:-/tmp/tgz}
PKG=$TMP/package/qt-x11-opensource
NAME=qt-x11-opensource
VERSION=4.5.3
CHOST=i486
ARCH=${ARCH:-i686}
BUILD=1as
SOURCE=ftp://ftp.trolltech.com/qt/source/$NAME-src-$VERSION.tar.gz

if [ ! -e $NAME-src-$VERSION.tar.gz ]; then
wget -c $SOURCE
fi

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O3 -march=i686 -pipe -fomit-frame-pointer"
elif [ "$ARCH" = "athlon64" ]; then
  SLKCFLAGS="-O2 -march=athlon64 -pipe"
elif [ "$ARCH" = "athlonxp" ]; then
  SLKCFLAGS="-O3 -march=athlon-xp -pipe -fomit-frame-pointer"
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2"
elif [ "$ARCH" = "s390" ]; then
  SLKCFLAGS="-O2"
fi

if [ ! -d $TMP ]; then
 mkdir -p $TMP
fi
if [ ! -d $PKG ]; then
 mkdir -p $PKG
fi

cd $TMP
tar xvzf $CWD/$NAME-src-$VERSION.tar.gz

echo -e "\E[0;32m+------------------------------------------+\E[0;0m"
echo -e "\E[0;32m| Start SlackBuild $NAME-$VERSION |\E[0;0m"
echo -e "\E[0;32m+------------------------------------------+\E[0;0m"

cd $NAME-src-$VERSION

find . -perm 666 -exec chmod 644 {} \;
find . -perm 664 -exec chmod 644 {} \;
find . -perm 600 -exec chmod 644 {} \;
find . -perm 444 -exec chmod 644 {} \;
find . -perm 400 -exec chmod 644 {} \;
find . -perm 440 -exec chmod 644 {} \;
find . -perm 777 -exec chmod 755 {} \;
find . -perm 775 -exec chmod 755 {} \;
find . -perm 511 -exec chmod 755 {} \;
find . -perm 711 -exec chmod 755 {} \;
find . -perm 555 -exec chmod 755 {} \;

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure -prefix /opt/qt4-4.5.3 -qt-gif -no-exceptions -fast -system-sqlite \
-qdbus -pch -nomake examples -nomake demos -confirm-license
make sub-src sub-tools
make install

(mkdir -p $PKG/opt/qt4-4.5.3
 cd /opt/qt4-4.5.3
 cp -a -r * $PKG/opt/qt4-4.5.3
)

(mkdir -p $PKG/usr/lib/pkgconfig
 cd /opt/qt4-4.5.3/lib/pkgconfig
 cp -a * $PKG/usr/lib/pkgconfig
)

mkdir -p $PKG/usr/share/pixmaps
cp -a $CWD/*.png $PKG/usr/share/pixmaps

mkdir -p $PKG/usr/share/applications
cp -a $CWD/*.desktop $PKG/usr/share/applications

mkdir -p $PKG/usr/doc/$NAME-$VERSION
cp -a INSTALL LICENSE* OPENSOURCE-NOTICE.TXT README $PKG/usr/doc/$NAME-$VERSION

( cd $PKG
  find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs str
ip --strip-unneeded 2> /dev/null
  find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs
strip --strip-unneeded 2> /dev/null
  find . | xargs file | grep "current ar archive" | cut -f 1 -d : | xargs strip
-g 2> /dev/null
)

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/usr/doc/$NAME-$VERSION/slack-desc
cat $CWD/qt4.SlackBuild > $PKG/usr/doc/$NAME-$VERSION/qt4.SlackBuild

cd $PKG
chown -R root:root .
requiredbuilder -y -v -s $CWD $PKG
makepkg -l y -c n $CWD/qt4-$VERSION-$ARCH-$BUILD.tgz

if [ "$1" = "--cleanup" ]; then
 rm -rf $TMP
fi
Non capisco proprio cosa sia andato storto...

Re: QT4 & SlackBuild

Inviato: mer 7 ott 2009, 10:09
da conraid
a parte le directory che non si usano più nemmeno per andare a scuola (e non dire che è la traduzione di directory, in teoria sono concetti leggermenti diversi) avevi cancellato il contenuto di /tmp/tgz/package/qt-x11-opensource prima?
sembra uno di quei problemi di non cancellazione della directory precedente, anche perché il build non sembra farlo, cosa non buona secondo me

Re: QT4 & SlackBuild

Inviato: mer 7 ott 2009, 10:19
da tgmx
conraid ha scritto:a parte le directory che non si usano più nemmeno per andare a scuola
Io la usavo per andare a scuola... :D
conraid ha scritto:avevi cancellato il contenuto di /tmp/tgz/package/qt-x11-opensource prima?
sembra uno di quei problemi di non cancellazione della directory precedente, anche perché il build non sembra farlo, cosa non buona secondo me
Hai ragione, c'era qt4_static in /tmp/tgz/package/qt-x11-opensource, tra l'altro non so nemmeno come ci sia finita, probabilmente tempo fa avevo provato a creare il pacchetto da slackbuild.

Ora ho svuotato la directory ( ...ops directory :D ) e sto eseguendo nuovamente lo script...

Grazie Conraid!

Re: QT4 & SlackBuild

Inviato: mer 7 ott 2009, 10:49
da conraid
nei build metti sempre qualcosa come

Codice: Seleziona tutto

rm -rf $PKG                  
mkdir -p $TMP $PKG           
io metto anche un

Codice: Seleziona tutto

rm -rf $TMP/ $PRGNAME-$VERSION   
naturalmente qui varia in base al nome della directory che hanno i sorgenti

Re: QT4 & SlackBuild

Inviato: mer 7 ott 2009, 15:35
da tgmx
conraid ha scritto:nei build metti sempre qualcosa come

Codice: Seleziona tutto

rm -rf $PKG                  
mkdir -p $TMP $PKG           
io metto anche un

Codice: Seleziona tutto

rm -rf $TMP/ $PRGNAME-$VERSION   
naturalmente qui varia in base al nome della directory che hanno i sorgenti
Perfetto, grazie ancora.

Re: QT4 & SlackBuild [RISOLTO]

Inviato: mer 7 ott 2009, 15:36
da conraid
senza spazio dopo $TMP/
il tag code deve aver aggiunto uno spazio, è
$TMP/$PRGNAME-$VERSION