Installer Qt sur Mac avec Xcode ou QtCreator

Michel LIBERADO

Ces quelques pages montrent une démarche à suivre pour installer facilement Qt 4.4.3 sur Mac et l'utiliser soit avec Xcode soit avec QtCreator.

(English version available)

- Titre : Installer Qt sur Mac avec Xcode ou QtCreator

- Auteur : Michel LIBERADO

- Parution : 7 février 2009

- Mise à jour : 17 avril 2020

- Licence : Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ® 2009 Michel LIBERADO. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Installer Xcode et les outils de compilation

- I-A. Informations

- I-B. Installation Xcode

- II. Installer Qt 4.4.3

- II-A. Informations

- II-B. Installation Qt 4.4.3 Mac

- III. Votre première compilation avec le terminal

- III-A. Création du fichier source

- III-B. Création du fichier de projet et compilation

- III-C. Explications sur les commandes à entrer

- IV. Votre première compilation avec Xcode

- V. Votre première compilation avec QtCreator

- VI. Résumé

I - Installer Xcode et les outils de compilation

I-A - Informations

Pour pouvoir utiliser Qt et compiler vos sources, il vous faut d'abord installer un compilateur. Si vous ne le faites pas, vous pouvez très bien installer Qt, mais bien évidemment la commande make ne sera pas reconnue en tant que commande interne. La documentation de Qt parle d'elle-même à ce sujet :

On Mac OS X, the binary package requires Mac OS X 10.4.x (Tiger) or later and GCC 4.0.1 to develop applications. Its applications will run on Mac OS X 10.3.9 and above.

L'installation de Xcode peut se faire directement depuis le DVD de Mac OS X fourni avec votre machine. Elle est également disponible gratuitement sur le site d'Apple. La version utilisée pour ce tutoriel est la version 3.2.1 qui peut être trouvée à cette adresse (environ 1 go) : Telecharger la dernière version de Xcode sur le site d'Apple.

I-B - Installation Xcode

Monter le dmg obtenu (nom : Xcode312_2621_developerdvd.dmg). Double cliquez sur XcodeTool.mpkg et suivez les instructions d'installation. Vous devriez ensuite obtenir la séquence suivante à peu de choses près :

L'installation se fait en 5 minutes environ.

Contenu de l'image disque

Installation Xcode : introduction

Installation Xcode : licence

Installation Xcode : type d'installation

Installation Xcode : écriture des fichiers

Installation Xcode : fin de l'installation

Les fichiers vont tous par défaut dans le dossier /Developer. Il n'y a pas besoin de redémarrer, vous pouvez passer à la prochaine étape : Installer Qt 4.4.3.

II - Installer Qt 4.4.3

II-A - Informations

Comme pour la version PC, vous pouvez télécharger les sources et les recompiler vous-même, les instructions sont fournies par Qt. Ici nous nous intéresserons directement aux binaires fournis sur le site de Qt. La version utilisée pour ce tutoriel est la version 4.4.3 qui peut être trouvée à cette adresse (environ 120 Mo) : Télécharger le binaire (.dmg) de Qt 4.4.3 sur le site de Qt

Téléchargez l'image disque directement dans la section « Additional downloads ».

Téléchargez aussi les debug libraries si vous comptez déboguer (sauf si vous êtes trop bons :D )

II-B - Installation Qt 4.4.3 Mac

Double cliquez sur Qt.mpkg et suivez les instructions d'installation. Vous devriez ensuite obtenir la séquence suivante à peu de choses près.

L'installation se fait en 5 minutes environ.

Contenu de l'image disque Qt 4.4.3 Mac : cliquer sur Qt.mpkg

Warning habituel : accepter

Installation Qt 4.4.3 Mac : introduction

Installation Qt 4.4.3 Mac : informations

Installation Qt 4.4.3 Mac : licence

Installation Qt 4.4.3 Mac : type d'installation et place occupée

Installation Qt 4.4.3 Mac : écriture des fichiers

Installation Qt 4.4.3 Mac : fini  !

Installation Qt 4.4.3 Mac : éjecter l'image disque

Les fichiers vont tous par défaut dans le dossier /Developer.

Installation Qt 4.4.3 Mac : fichiers et dossiers d'installation de Qt

Il n'y a pas besoin de redémarrer, vous pouvez passer à la prochaine étape : première compilation depuis le terminal.

III - Votre première compilation avec le terminal

Il est possible de compiler des sources directement depuis le terminal, un peu comme sous Windows (avec l'invite de commande) en utilisant la commande make (nmake sous Windows si vous utilisez le compilateur de Microsoft).

III-A - Création du fichier source

Avant de créer un fichier n'importe où (NDLR en général le bureau) et de prendre le risque d'avoir plein de fichiers générés éparpillés partout, nous allons créer un dossier pour le projet, pourquoi pas QtProjects dans /Developer et le fameux dossier de test propre à tout programmeur 01_test :D

ATTENTION : évitez les noms de fichiers et de dossier comportant des espaces !

Créez un nouveau document texte et enregistrez-le sous le nom main.cpp. Ensuite, copiez-collez le code ci-dessous puis enregistrez de nouveau :

main.cpp

#include <QApplication>
#include <QPushButton>

int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QPushButton button("Ca marche !");
button.show();
return app.exec();
}

III-B - Création du fichier de projet et compilation

Maintenant, il faut créer le fichier de projet, la commande « qmake » le fera. Ouvrez le terminal (appel depuis Spotlight ou dans /Applications/Utilities). Allez au dossier /Developer/QtProjects/01_test avec la commande « cd /Developer/QtProjects/01_test ».

Vous pouvez également taper « cd » et glisser le dossier 01_test comme sur la capture suivante :

Drag and drop d'un dossier dans le terminal, pratique pour éviter de se prendre la tête avec les espaces dans les noms

Tapez ensuite les commandes suivantes :
qmake -project pour créer le fichier de projet (par défaut 01_test.pro) ;
qmake -spec macx-g++ pour créer le makefile ;
make pour compiler.
L'exécutable apparaît dans le même dossier que les sources. Voilà, le résultat :

Exécutable de test Qt sur Mac

Avant de passer à la suite, effacez tous les fichiers créés sauf le fichier source, ce n'est pas forcément utile, mais ça entraîne à faire les commandes nécessaires.

III-C - Explications sur les commandes à entrer

Avant de passer à la suite, il peut être judicieux de comprendre les options de la commande qmake.
La documentation se trouve sur le site de Trolltech (ou Nokia comme vous voulez) qmake-running.

Comme il est dit dans la documentation, le comportement par défaut de qmake est de générer un Makefile, mais qu'il est également possible de générer des fichiers de projet.
Le fait de générer un fichier de projet ou un Makefile est appelé le 'mode'.
La première commande utilisant -project spécifiait explicitement la création d'un fichier de projet.
La seconde commande fait intervenir -spec. La documentation dit :
-spec spec
qmake will use spec as a path to platform and compiler information, and the value of QMAKESPEC will be ignored

La documentation de QMAKESPEC précise :
The name of a platform-compiler combination. In this case, qmake will search in the directory specified by the mkspecs subdirectory of the data path specified when Qt was compiled (see QLibraryInfo::DataPath).
Il reste donc à trouver la combinaison plateforme-compilateur supportée sur Mac. Voilà la page concernée : plateformes supportées On y retrouve bien macx-g++.
Maintenant que je vous ai bien fait fouiller un peu partout dans la documentation, voilà une autre explication de ce qui précède : notes concernant les plateformes :
Where the source package typically uses the macx-g++ specification, the binary package is typically configured to use the macx-xcode specification Cela veut dire que si vous ne spécifiez pas -spec macx-g++, qmake générera le fichier de projet Xcode par défaut.

IV - Votre première compilation avec Xcode

Le fichier source est identique à celui du chapitre précédent. Nous allons reprendre au III-B et entrer les commandes suivantes :
qmake -project pour créer le fichier de projet (par défaut 01_test.pro) ;
qmake -spec macx-xcode pour créer le fichier de projet Xcode (01_test.xcodeproj).
Ensuite, on lance le fichier de projet Xcode et voilà :

Intégration Qt a Xcode, autocompletion fonctionnelle

L'intégration n'est pas parfaite, le fichier de projet ne se maintient pas tout seul donc dès que vous ajouterez des fichiers au projet, il faudra régénérer le .pro.

Dans tous les cas, tôt ou tard vous serez confrontés à l'édition du .pro, donc autant le faire dès le départ. Toutefois, vous pourrez toujours ajouter une cible externe (external target) en précisant la commande qmake utilisant « Custom build command » et en jouant sur les dépendances de cibles.

Ce tutoriel sera mis à jour dès que possible pour tenir compte de cette astuce.

Il ne reste plus qu'à cliquer le bouton « Build and Go » et c'est tout !

V - Votre première compilation avec QtCreator

Reprenez les deux chapitres précédents, mais conservez uniquement le fichier source ET le fichier de projet .pro. Ouvrez le fichier .pro avec Qt Creator.

QtCreator Sur Mac

Il ne reste plus qu'à cliquer le bouton « Run » et c'est tout !

VI - Résumé

Quel que soit l'environnement de développement que vous choisirez, il faudra maintenir le fichier de projet .pro. Certes, cela se fait automatiquement si vous êtes sur PC et avez une licence commerciale de Qt avec l'intégration pour Visual Studio. Par expérience, le fichier de projet qui peut être généré par l'intégration à Visual Studio devient très rapidement inutilisable pour peu que vous ayez des variables d'environnement par-ci par-là. La conséquence est simple : le déploiement vers d'autres plateformes devient plus compliqué. Vous pouvez trouver la documentation de qmake sur le site de trolltech ici : qmake manual
Dans ce tutoriel nous nous sommes plus intéressés aux particularités liées à Mac OS X de qmake