Repository 32bit  Forum
Repository 64bit  Wiki

QT4 slackbuild & slack 13.1 [RISOLTO]

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.

QT4 slackbuild & slack 13.1 [RISOLTO]

Messaggioda tgmx » mer mag 26, 2010 17:05

Ciao Ragazzi,
oggi sono passato dalla slack 12.2 alla 13.1 e sto cercando di capire se è il caso o no di utilizzarla anche al lavoro dato che la uso per sviluppare in QT4.

Nella 12.2 mi ero fatto un mio slackbuild per le qt4 che funzionava discretamente:
Codice: Seleziona tutto
#!/bin/sh
CWD=`pwd`
TMP=${TMP:-/tmp/tgz}
PKG=$TMP/package/qt-everywhere-opensource
NAME=qt-everywhere-opensource
VERSION=4.6.2

#COMPILEOPTION=-static
#PACKAGEVERSION=$VERSION$COMPILEOPTION
COMPILEOPTION=
PACKAGEVERSION=$VERSION

CHOST=i486
ARCH=${ARCH:-i686}
BUILD=1lc
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-$PACKAGEVERSION |\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 $COMPILEOPTION -debug -prefix /opt/qt4-$PACKAGEVERSION -qt-gif -no-exceptions -fast -qt-sql-sqlite \
-qdbus -pch -nomake examples -nomake demos -opensource -confirm-license -qt-sql-mysql -qt-sql-sqlite -qt-gif -qt-libjpeg -qt-libpng
make sub-src sub-tools
make install

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

(mkdir -p $PKG/usr/lib/pkgconfig
 cd /opt/qt4-$PACKAGEVERSION/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-$PACKAGEVERSION
cp -a INSTALL LICENSE* OPENSOURCE-NOTICE.TXT README $PKG/usr/doc/$NAME-$PACKAGEVERSION

( cd $PKG
  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
  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-$PACKAGEVERSION/slack-desc
cat $CWD/qt4.SlackBuild > $PKG/usr/doc/$NAME-$PACKAGEVERSION/qt4.SlackBuild

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

if [ "$1" = "--cleanup" ]; then
 rm -rf $TMP
fi


Ora vorrei recuperare il lavoro per adattare lo slackbuild all slack 13.1 (quindi al txz).

Ho provato sostituendo semplicemente tgz con txz ma pare non funzioni bene e non campisco perchè.
Lo slackbuild è il seguente:
Codice: Seleziona tutto
#!/bin/sh
CWD=`pwd`
TMP=${TMP:-/tmp/txz}
PKG=$TMP/package/qt-everywhere-opensource
NAME=qt-everywhere-opensource
VERSION=4.6.2

#COMPILEOPTION=-static
#PACKAGEVERSION=$VERSION$COMPILEOPTION
COMPILEOPTION=
PACKAGEVERSION=$VERSION

CHOST=i486
ARCH=${ARCH:-i686}
BUILD=1lc
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-$PACKAGEVERSION |\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 $COMPILEOPTION -debug -prefix /opt/qt4-$PACKAGEVERSION -qt-gif -no-exceptions -fast -qt-sql-sqlite \
-qdbus -pch -nomake examples -nomake demos -opensource -confirm-license -qt-sql-mysql -qt-sql-sqlite -qt-gif -qt-libjpeg -qt-libpng
make sub-src sub-tools
make install

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

(mkdir -p $PKG/usr/lib/pkgconfig
 cd /opt/qt4-$PACKAGEVERSION/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-$PACKAGEVERSION
cp -a INSTALL LICENSE* OPENSOURCE-NOTICE.TXT README $PKG/usr/doc/$NAME-$PACKAGEVERSION

( cd $PKG
  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
  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-$PACKAGEVERSION/slack-desc
cat $CWD/qt4.SlackBuild > $PKG/usr/doc/$NAME-$PACKAGEVERSION/qt4.SlackBuild

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

if [ "$1" = "--cleanup" ]; then
 rm -rf $TMP
fi


In pratica viene creato un pacchetto ma sembra che dentro non ci finisca tutto, ad esempi il file /opt/qt4-4.6.2/bin/qmake non c'è.

Secondo voi dov'è il problema?
Ultima modifica di tgmx il ven mag 28, 2010 7:13, modificato 2 volte in totale.
Avatar utente
tgmx
Linux 3.x
Linux 3.x
 
Messaggi: 1330
Iscritto il: ven apr 28, 2006 13:40
Località: Ancona
Slackware: 13.37
Desktop: KDE 4

Re: QT4 slackbuild & slack 13.1

Messaggioda d4z_c0nf » mer mag 26, 2010 20:16

Guarda non ti vorrei dire una fesseria,al di là del tuo problema, le qt in slackware sono già qt4 mi pare dalla 13.0.

Codice: Seleziona tutto
rock@localhost:~$ grep -il qt-4.6.2 /var/log/packages/*
/var/log/packages/qt-4.6.2_2d3d3e5-x86_64-1
Avatar utente
d4z_c0nf
Packager
Packager
 
Messaggi: 1293
Iscritto il: mar mar 14, 2006 18:07
Località: Salerno
Nome Cognome: Rocco Aliberti
Slackware: 14.1-64bit
Kernel: 3.10.17
Desktop: xfce

Re: QT4 slackbuild & slack 13.1

Messaggioda tgmx » mer mag 26, 2010 20:27

d4z_c0nf ha scritto:Guarda non ti vorrei dire una fesseria,al di là del tuo problema, le qt in slackware sono già qt4 mi pare dalla 13.0.


Sì lo so ma al lavoro mi serve tenere diverse versioni delle qt (4.6.1, 4.6.2, static, shared ecc...) quindi me le compilo e le metto tutte in /opt/qt4-4.6.x/ .
In questo modo posso tranquillamente fare delle prove, installare e disinstallare a piacere senza compromettere le librerie di sistema... :)
Avatar utente
tgmx
Linux 3.x
Linux 3.x
 
Messaggi: 1330
Iscritto il: ven apr 28, 2006 13:40
Località: Ancona
Slackware: 13.37
Desktop: KDE 4

Re: QT4 slackbuild & slack 13.1

Messaggioda ponce » gio mag 27, 2010 17:08

allora forse ti converrebbe adattare con le tue modifiche l'ultimo slackbuild

http://slackware.osuosl.org/slackware-c ... urce/l/qt/
Avatar utente
ponce
Linux 3.x
Linux 3.x
 
Messaggi: 1485
Iscritto il: mer mar 05, 2008 16:45
Località: limbo
Nome Cognome: Matteo Bernardini
Slackware: slackware64-current
Kernel: 3.17-rc3
Desktop: lxde

Re: QT4 slackbuild & slack 13.1

Messaggioda tgmx » gio mag 27, 2010 17:52

ponce ha scritto:allora forse ti converrebbe adattare con le tue modifiche l'ultimo slackbuild

http://slackware.osuosl.org/slackware-c ... urce/l/qt/


Alla fine il problema era nel fatto che io passavo al "configure":
Codice: Seleziona tutto
-qt-libpng


mentre guardando lo slackbuild della Slack 13.1 viene passato:
Codice: Seleziona tutto
-system-libpng


Quindi adesso ho risolto.
Purtroppo non ho tempo di indagare il problema ma mi resta il dubbio sul perchè con la 12.2 andava bene mentre con la 13.1 no utilizzando sempre la stessa versione di QT4 4.6.2.
La differenza tra -qt-libpng e -system-libpng dovrebbe essere solo nel fatto che la prima usa le librerie PNG che ha nelle QT mentre la seconda usa quelle di sistema... :? Mah..!!

Grazie a tutti!
Avatar utente
tgmx
Linux 3.x
Linux 3.x
 
Messaggi: 1330
Iscritto il: ven apr 28, 2006 13:40
Località: Ancona
Slackware: 13.37
Desktop: KDE 4


Torna a Packages

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti