LINUX.ORG.RU

SlackBuild. Qt4. qmake && make && make install


0

0

Всем привет, дистрибутив (slack-based) MOPSLinux, есть желание собрать в пакет следующую программу: http://bitcheese.net/wiki/QMPDClient в файле INSTALL, который в архиве с исходниками, заявлено:

Change PREFIX in qmpdclient.pro if /usr/local is not desirable 2. qmake 3. make (gmake on some platforms) 4. su -c «make install»

Eventual extra datafiles go into the following locations: /usr/local/share/QMPDClient/[styles|iconsets|translations] (Substitute /usr/local for appropriate prefix) or $HOME/.local/share/QMPDClient/[styles|iconsets|translations]

И вот хочу узнать, для таких случаев, какие параметры для сборки-компиляции надо задавать , что б собрать программу на qt4 в пакет (tgz)? Спрашиваю, по поводу всяких тонкостей задаваний QTDIR и qmake

* гуглом пользовался, что-то находил, но пока что не совсем все ясно, вот и обращаюсь к Вам

★★★★★

Никаких QTDIR задавать не надо, делайте просто, как сказано. Только про PREFIX не забудьте.

name_no ★★
()

qmpdclient-ne.sh:

#!/bin/sh

BUILD=${BUILD:-1}

PACKAGE=`basename $0 .sh`
ARCH=`uname -m`

SRCDIR=`pwd`/$PACKAGE
URL=git://github.com/Voker57/qmpdclient-ne.git
test -d $SRCDIR && (cd $SRCDIR && git pull || exit 1) || git clone $URL

VERSION=git_`(cd $PACKAGE && git rev-list HEAD | wc -l) || date +%Y%m%d`

BUILDDIR=`pwd`/$PACKAGE-$VERSION-build
DESTDIR=`pwd`/$PACKAGE-$VERSION-package

rm -rf $DESTDIR
mkdir -p $DESTDIR
rm -rf $BUILDDIR
mkdir -p $BUILDDIR

lndir -silent $SRCDIR $BUILDDIR || exit 1
rm $BUILDDIR/*.pro
for i in $SRCDIR/*.pro; do sed 's|^\(PREFIX *=\).*|\1/usr|' $i >$BUILDDIR/`basename $i`; done

(cd $BUILDDIR && qmake INSTALL_PREFIX=/usr PREFIX=/usr && \
make && \
make install INSTALL_ROOT=$DESTDIR && \
cd $DESTDIR && \
/sbin/makepkg -l y -c n ../$PACKAGE-$VERSION-$ARCH-$BUILD.tgz) || exit 1

rm -rf $DESTDIR
rm -rf $BUILDDIR

если нигде не накосячил, конечно ;)

arsi ★★★★★
()
Ответ на: комментарий от arsi

только это… вместо «qmake INSTALL_PREFIX=/usr PREFIX=/usr» просто «qmake». экспериментировал, да забыл подчистить ^_^'

arsi ★★★★★
()

Моя кривенькая версия слакбилда для MOPSLinux 6.2.2

NAME=qmpdclient
VERSION=1.1.1  
ARCH=${ARCH:-i686}
BUILD=${BUILD:-1} 
CWD=$(pwd)        
TMP=${TMP:-/tmp/pkg}
PKG=$TMP/package-$NAME
DOCS=${DOCS-AUTHORS  COPYING  Changelog  INSTALL  README  THANKSTO}

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
fi

set -e

rm -rf $PKG
mkdir -p $TMP $PKG
cd $TMP
rm -rf $NAME-$VERSION
mkdir -p $NAME-$VERSION
cd $NAME-$VERSION
tar -xvf $CWD/$NAME-$VERSION.tar.gz
chown -R root:root .
chmod -R a-s,u+w,go+r-w .


for i in ./*.pro; do sed 's|^\(PREFIX *=\).*|\1/usr|' $i > `basename $i.tmp`; mv $i.tmp $i; done
qmake
make
make install INSTALL_ROOT=$PKG
make translate
make install_translations INSTALL_ROOT=$PKG

find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

lrelease lang/*.ts
cp lang/*.qm $PKG/usr/share/QMPDClient/translations/
mkdir -p $PKG/usr/doc/$NAME-$VERSION
cp -a $DOCS \
  $PKG/usr/doc/$NAME-$VERSION
cat $CWD/$NAME.SlackBuild > $PKG/usr/doc/$NAME-$VERSION/$NAME.SlackBuild

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
requiredbuilder -v -y -s $CWD $PKG
makedata --cwd $CWD --pkg $PKG --name $NAME --version $VERSION --arch $ARCH --build $BUILD --tags "xapps,audio," --author Lampus --email lampuslam@mail.ru
makepkg -l y -c n $CWD/$NAME-$VERSION-$ARCH-$BUILD.txz

Lampus
()
11 октября 2009 г.
Ответ на: комментарий от Lampus

Всем спасибо и особенно за SlackBuild, что-то конечно осталось непонятным , но это по большей части с Qt с чем и надо как-нибудь разобраться «для себя»

for i in ./*.pro; do sed 's|^\(PREFIX *=\).*|\1/usr|' $i > `basename $i.tmp`; mv $i.tmp $i; done

на счет этого кода, я даже и не знаю, что и ответить, ну просто не до думался бы и все, может быть пока что, т.к. серьезных дел с Qt не имел (интересно, а как Вы додумались =) ?)

NK ★★★★★
() автор топика

а как оттуда скачать? Я качаю тарбол, он скачивается размером 20 байт.

alex_custov ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.