Débogage des applications multiplates-formes
Remonter à Applications multiplates-formes
Remarque : La nouvelle solution de débogage décrite dans cette rubrique est la solution recommandée pour le débogage d'applications multiplates-formes. Dans ce scénario, vous utilisez :Même si la solution de débogage distant d'ancien style est toujours supportée, et qu'elle peut être utilisée facultativement pour installer et exécuter les débogueurs multiplates-formes, cet usage n'est pas actuellement documenté.
- Platform Assistant
- Un profil de connexion
- Un SDK (Software Development Kit) pour les plates-formes spécifiques (voir #Exigences pour le débogage multiplate-forme).
- Le débogueur intégré dans l'EDI
Le débogueur RAD Studio intégré vous permet de déboguer une application qui cible toute plate-forme cible supportée. Le débogueur intégré supporte généralement les applications Delphi et C++, à l'exception des plates-formes C++ Windows 64 bits et Delphi iOS.
RAD Studio supporte les débogueurs multiplates-formes suivants :
- Débogueur Embarcadero Win64 pour Delphi (sur un PC fonctionnant sous un système d'exploitation Windows 64 bits)
- Débogueur Embarcadero Win64 pour C++ (sur un PC fonctionnant sous un système d'exploitation Windows 64 bits)
- Débogueur Embarcadero OS X (sur un Mac fonctionnant sous une version de OS X)
- Débogueur Embarcadero iOS pour le simulateur iOS (sur un Mac)
- Débogueur Embarcadero iOS pour le périphérique iOS (sur un périphérique iOS connecté)
Lorsque vous installez Platform Assistant sur votre plate-forme cible ou sur une plate-forme intermédiaire qui supporte votre plate-forme cible, les débogueurs multiplates-formes sont également installés. Les débogueurs qui sont recensés sur votre système sont listés dans Outils > Options > Options du débogueur.
Architecture du débogage des applications multiplates-formes
Platform Assistant et un profil de connexion sont requis pour l'établissement d'une session de débogage pour une application s'exécutant sur un système cible multiplate-forme. La seule configuration multiplate-forme qui ne nécessite pas Platform Assistant est un système de développement Win64. En outre, certaines plates-formes cible requièrent un SDK, comme décrit dans la section suivante #Exigences pour le débogage multiplate-forme.
Le débogueur multiplate-forme et le processus débogué s'exécutent tous deux sur la plate-forme cible. Mais le débogueur multiplate-forme signale le statut et interagit avec vous sur le PC de développement dans l'EDI de RAD Studio. Cela signifie que l'utilisation de l'un des débogueurs multiplates-formes est très similaire à celle du débogueur intégré pour les applications Win32. Pour des informations communes plus détaillées sur le débogage, voir Présentation du débogage.
Remarque concernant le débogage Win32 distant : Vous pouvez, si vous le souhaitez, continuer à utiliser le débogueur distant (d'ancien style) pré-existant pour toutes les opérations de débogage distant de bureau. N'oubliez pas cependant que vous devrez copier manuellement les fichiers sur la plate-forme cible, comme auparavant. Pour obtenir des instructions sur l'utilisation du débogueur distant d'ancien style, voir Présentation du débogage distant et les procédures associées. La solution de débogage distant d'ancien style peut être utilisée pour le débogage Win32 distant (comme auparavant) et pour le débogage multiplate-forme des applications Win64 et Mac OS X. Toutefois, l'aide ne donne pas encore de détails sur la procédure d'utilisation du débogueur distant d'ancien style pour le débogage multiplate-forme.
Exigences pour le débogage multiplate-forme
Pour effectuer un débogage multiplate-forme :
- Votre application doit avoir une plate-forme cible (Win64, OS X, simulateur iOS ou périphérique iOS, ou Win32 distante) activée.
- Selon la plate-forme cible :
- Pour les plates-formes Mac OS X et iOS :
- Platform Assistant doit être exécuté sur le Mac.
- Votre application doit avoir un profil de connexion assigné.
- Votre système de développement doit avoir une connexion dynamique au Mac (c'est-à-dire que Tester connexion doit réussir sur la fenêtre Gestionnaire de profils de connexion). Cette connexion vous permet d'utiliser le débogueur intégré et le Gestionnaire de déploiement.
- Un SDK est requis (sur le Gestionnaire de SDK) pour les plates-formes et types d'applications suivants :
- Les applications de bureau FireMonkey C/C++ pour la plate-forme Mac OS X.
- Les applications mobiles FireMonkey Delphi pour la plate-forme Périphérique iOS.
- De plus, pour la plate-forme Périphérique iOS :
- Un périphérique iOS provisionné doit être connecté au Mac par un câble USB.
- Vous ne pouvez pas utiliser le débogueur intégré pour déboguer une application iOS compilée pour les plates-formes Ad Hoc ou App Store.
- Pour la plate-forme Windows 64 bits :
- Si vous êtes connecté à un PC 64 bits distant :
- Vous devez utiliser Platform Assistant et un profil de connexion.
- Votre système de développement doit avoir une connexion dynamique au PC 64 bits distant (c'est-à-dire que Tester connexion doit réussir sur la fenêtre Gestionnaire de profils de connexion). Cette connexion vous permet d'utiliser le débogueur intégré et le Gestionnaire de déploiement.
- Si votre système de développement est un PC fonctionnant sous un système d'exploitation Windows 64 bits :
- Vous n'avez pas besoin d'utiliser Platform Assistant car votre environnement de débogage est en-machine, et le débogueur intégré s'exécute automatiquement.
- Vous pouvez néanmoins choisir d'utiliser facultativement Platform Assistant et un profil de connexion, comme vous le feriez pour un système cible Windows 64 bits distant. Ceci vous permet d'utiliser le Gestionnaire de déploiement.
- Si vous êtes connecté à un PC 64 bits distant :
- Pour les plates-formes Mac OS X et iOS :
Débogage des applications iOS
Pour le débogage sur les plates-formes cible Simulateur iOS et Périphérique iOS, certaines fonctionnalités traditionnelles du débogueur ne sont pas disponibles.
Pour de plus amples informations, voir Débogage des applications iOS.
Débogage avec C++Builder Windows 64 bits
Pour le débogage d'applications C++ Windows 64 bits, certaines fonctionnalités du débogueur ne sont pas disponibles.
Pour de plus amples informations, voir Débogage des applications C++ Builder Windows 64 bits et les "Notes relatives au débogueur" dans le fichier Readme (Notes de release).
Sur la plate-forme Mac OS X, le débogueur nécessite des permissions de fichier
Le débogage sur Mac OS X est une opération privilégiée ; seul un processus avec des droits d'accès adéquats peut agir en tant que débogueur.
Pour de plus amples informations, voir Acquisition de la permission permettant de supporter le débogage sur un Mac.
Démarrage du débogueur avec une commande 'Exécuter'
Quand toutes les exigences relatives au débogage multiplate-forme sont satisfaites, l'entrée de la commande Exécuter :
- Copie les fichiers nécessaires entre le PC hôte et la machine cible spécifiée dans le profil de connexion.
- Exécute l'application dans le débogueur approprié requis pour la plate-forme.
Par exemple, si OS X est la plate-forme cible active, l'exécutable est copié sur le Mac.
Vous pouvez utiliser l'une des commandes Exécuter standard pour démarrer le débogage d'une application multiplate-forme (pour OS X ou Win64) :
- Exécuter > Exécuter (F9) (compile et exécute l'application dans le débogueur intégré)
- Exécuter > Pas à pas (F8)
- Exécuter > Pas à pas approfondi (F7)
- Exécuter > Exécuter jusqu'au retour (Maj+F8)
- Exécuter > Exécuter jusqu'au curseur (F4)
Démarrage du débogueur avec 'Attacher au processus' et 'Charger un processus Local/Distant'
Pour exécuter et déboguer un binaire compilé sur une machine exécutant le serveur Platform Assistant (un PC distant ou un Mac), vous pouvez utiliser :
- Attacher au processus pour déboguer un processus en cours d'exécution qui est soit local, soit distant. L'utilisation de Platform Assistant et d'un profil de connexion est recommandée ici.
- Charger un processus Local pour charger un processus débogué local.
- Charger un processus distant pour charger un processus débogué et l'exécuter sur une machine distante, avec quelques restrictions concernant les profils de connexion. L'utilisation de Platform Assistant et d'un profil de connexion est recommandée ici.
Voir aussi
- Présentation du débogage
- Comment utiliser le débogueur
- Débogage distant - Procédures d'ancien style
- Création et test d'un profil de connexion sur le PC de développement
- PAServer, l'application serveur Platform Assistant
- Débogage des applications C++ Builder Windows 64 bits
- Débogage des applications iOS
- Acquisition de la permission permettant de supporter le débogage sur un Mac
- Debugging optimized Win64 code
