Page 1 of 1

Version de qt

Posted: 08 Oct 2010 23:59
by Trantor
Bonjour. Je viens d'installer zyGrib.
Il y a un problème de compilation à cause de la version de qt.
Sur mon PC qmake fait automatiquement référence à qt3, il a donc fallu forcer l'utilisation de qt4.
Voila les modifications du makefile que j'ai fait :

Code: Select all

QTBIN=/usr/bin
QMAKE=qmake-qt4
#QTBIN=/opt/qt/qt/bin
#QTBIN=/usr/local/Trolltech/Qt-4.7.0/bin

INSTALLDIR=$(HOME)/zyGrib

all: zyGrib

SRC= src/*.h src/*.cpp \
     src/*/*.h src/*/*.cpp src/*/*.c \
     src/*/*/*.h src/*/*/*.c \

clean:
	rm -f zyGrib
	rm -f src/zyGrib
	cd src;	$(QTBIN)/$(QMAKE); make clean

veryclean:
	rm -f zyGrib
	rm -f src/zyGrib
	cd src/bzip2; $(QTBIN)/$(QMAKE); make clean
	cd src/zlib-1.2.3; $(QTBIN)/$(QMAKE); make clean
	cd src/proj-4.6.0/src/; $(QTBIN)/$(QMAKE); make clean
	cd src;	$(QTBIN)/$(QMAKE); make clean

zyGrib: $(SRC)
	@ echo
	@ echo
	rm -f ./zyGrib
	cd src/bzip2; $(QTBIN)/$(QMAKE); make
	cd src/zlib-1.2.3; $(QTBIN)/$(QMAKE); make
	cd src/proj-4.6.0/src/; $(QTBIN)/$(QMAKE); make
	cd src; $(QTBIN)/$(QMAKE); make
	@ echo "-----------------------------------"
	@ echo "#!/bin/bash" >> ./zyGrib
	@ echo "cd `pwd`" >> ./zyGrib
	@ echo 'src/zyGrib $$*' >> ./zyGrib
	@ chmod 755 ./zyGrib


install: zyGrib
	mkdir -p $(INSTALLDIR)
	mkdir -p $(INSTALLDIR)/bin
	cp -a fonts $(INSTALLDIR)
	cp -a grib $(INSTALLDIR)
	cp -a img $(INSTALLDIR)
	cp -a maps $(INSTALLDIR)
	cp -a tr $(INSTALLDIR)
	rm -f ./zyGrib
	rm -f $(INSTALLDIR)/bin/zyGrib
	cp  -a src/zyGrib $(INSTALLDIR)/bin
	echo "#!/bin/bash" >> ./zyGrib
	echo "cd $(INSTALLDIR)" >> ./zyGrib
	echo 'bin/zyGrib $$*' >> ./zyGrib
	chmod 755 ./zyGrib
	cp -af zyGrib $(INSTALLDIR)
Je ne sais pas si la commande qmake-qt4 est standard, mais il serait utile d'inclure ceci dans un README.
En espérant que cela serve à d'autres.

Re: Version de qt

Posted: 09 Oct 2010 10:23
by DomH
Trantor wrote:Bonjour. Je viens d'installer zyGrib.
Il y a un problème de compilation à cause de la version de qt.

Je ne sais pas si la commande qmake-qt4 est standard
Bonjour,
elle est standard.

Pour savoir quelle est la version de qmake par défaut de votre système, c'est avec ubuntu

Code: Select all

update-alternatives --display qmake
pour le changer

Code: Select all

sudo update-alternatives --config qmake

Re: Version de qt

Posted: 09 Oct 2010 15:35
by Trantor
Je pense ne pas être le seul a avoir rencontré ce problème (chez moi - debian - qmake est un lien vers qmake-qt3)
Donc mettre l'excécutable qmake en variable dans le makefile :

QMAKE=qmake

avec un avertissement dans le README concernant les différentes versions serait une bonne chose.

Re: Version de qt

Posted: 09 Oct 2010 22:52
by jza
Bonjour
Trantor wrote:Je pense ne pas être le seul a avoir rencontré ce problème (chez moi - debian - qmake est un lien vers qmake-qt3)
C'est bien là le problème : Debian utilise le nom officiel d'un outil pour le faire pointer vers une version complètement dépassée.
Ce n'est pas standard, et pourtant cette idée saugrenue a été bêtement reprise par des distributions dérivées de Debian, dont Ubuntu.
Donc mettre l'excécutable qmake en variable dans le makefile :
QMAKE=qmake
Ce n'est pas parfait, loin de là, mais je préfère nettement la solution actuelle, avec un lien à ajuster vers le répertoire racine de Qt, car il y a d'autres outils utiles au même endroit que qmake, dont tout ce qui concerne les traductions. En plus ça permet facilement d'essayer différentes versions de Qt.

Une bien meilleure solution serait d'utiliser autoconf, on verra ça plus tard, peut-être.
avec un avertissement dans le README concernant les différentes versions serait une bonne chose.
Il y a déjà l'information sur la page de téléchargement.