Débogage des applications multi-périphériques
Remonter à Applications multi-périphériques
Sommaire
- 1 Architecture du débogage des applications multi-périphériques
- 2 Le débogueur intégré de RAD Studio
- 3 Exigences relatives au débogage multi-périphérique dans RAD Studio
- 4 Débogage avec C++Builder Windows 64 bits
- 5 Démarrage du débogueur avec une commande 'Exécuter'
- 6 Démarrage du débogueur avec 'Attacher au processus' et 'Charger un processus distant'
- 7 Voir aussi
Architecture du débogage des applications multi-périphériques
Débogage des applications macOS
Pour déboguer des applications macOS, suivez les étapes suivantes :
Dans le Gestionnaire de projets :
- Ajoutez ou activez la plate-forme cible (macOS 64 bits et macOS ARM 64 bits)
- Assignez un profil de connexion en sélectionnant les commandes suivantes : Outils > Options > Déploiement> Gestionnaire de profils de connexion, et spécifiez les paramètres suivants :
- Plate-forme
- Nom de l'hôte
- Numéro du port
- Mot de passe (facultatif)
- Accédez à Outils > Options > Déploiement > Gestionnaire de SDK, et ajoutez la version SDK.
Dans le serveur Platform Assistant (PAServer) :
- Assurez-vous que PAServer lance le débogueur distant pour macOS.
Débogage des apps iOS
Pour déboguer des applications iOS, suivez les étapes suivantes :
Dans le Gestionnaire de projets :
- Ajoutez ou activez la plate-forme cible (Périphérique iOS 64 bits)
- Assignez un profil de connexion en sélectionnant les commandes suivantes : Outils > Options > Déploiement > Gestionnaire de profils de connexion , et spécifiez les paramètres suivants :
- Plate-forme
- Nom de l'hôte
- Numéro du port
- Mot de passe (facultatif)
- Accédez à Outils > Options > Déploiement > Gestionnaire de SDK, et ajoutez la version SDK.
Dans le serveur Platform Assistant (PAServer)
- Assurez-vous que PAServer lance le débogueur distant pour iOS.
- Vérifiez que les apps iOS sont provisionnées et que le code est signé lors du développement.
Sur le périphérique iOS :
- Connectez le périphérique au Mac.
Débogage des applications Android
Avant de déboguer des applications Android sur RAD Studio, pensez à préparer votre environnement de développement Android.
Débogage des applications Linux
Pour déboguer des applications Linux, suivez les étapes suivantes :
Dans le Gestionnaire de projets :
- Ajoutez ou activez la plate-forme cible (Linux 64 bits)
- Assignez un profil de connexion en sélectionnant les commandes suivantes : Outils > Options > Déploiement > Gestionnaire de profils de connexion , et spécifiez les paramètres suivants :
- Plate-forme
- Nom de l'hôte
- Numéro du port
- Mot de passe (facultatif)
- Accédez à Outils> Options > Déploiement > Gestionnaire de SDK, puis ajoutez la version du SDK.
Dans le serveur Platform Assistant (PAServer)
- Assurez-vous que PAServer lance le débogueur distant pour Linux.
Le débogueur intégré de RAD Studio
Le débogueur intégré de RAD Studio vous permet de déboguer une application qui cible toute plate-forme cible supportée.
RAD Studio prend en charge les débogueurs suivants, qui s'exécutent sur la plate-forme cible spécifique :
- Débogueur Embarcadero Windows 32 bits - pour les applications Windows 32 bits.
- Débogueur Embarcadero Windows 64 bits pour Delphi - pour les applications Delphi Windows 64 bits.
- Débogueur Embarcadero LLDB Windows 64 bits pour C++ - pour les applications C++ Windows 64 bits.
- Débogueur Embarcadero Linux 64 bits - pour les applications Linux 64 bits.
- Débogueur Embarcadero pour le périphérique iOS 64 bits - pour les applications iOS 64 bits compilées pour les périphériques iOS.
- Débogueur Embarcadero Android 32 bits - pour les applications Android 32 bits compilées pour les plates-formes cible Android 32 bits.
- Débogueur Embarcadero Android 64 bits - pour les applications Android 64 bits compilées pour les plates-formes cible Android 64 bits.
- Débogueur Embarcadero macOS 64 bits - pour les applications macOS 64 bits.
- Débogueur Embarcadero macOS ARM 64 bits - pour les applications macOS et Simulateur iOS ARM 64 bits.
Les débogueurs Embarcadero appropriés sont installés quand vous préparez votre environnement de développement comme décrit dans l'aide. Par exemple, quand vous suivez les étapes du développement d'applications macOS, Platform Assistant et le débogueur macOS RAD Studio sont installés sur votre Mac.
- __lldb_apple_objc_v2_get_dynamic_class_info
- __lldb_caller_function
- __lldb_apple_objc_v2_get_shared_cache_class_info
- __lldb_caller_function
Exigences relatives au débogage multi-périphérique dans RAD Studio
- Si une application est exécutée sur une plate-forme cible macOS 64 bits, Périphérique iOS - 64 bits, Platform Assistant et un profil de connexion sont requis pour établir une session de débogage.
- La plate-forme cible Android et la plate-forme cible Win64 système ne nécessitent ni Platform Assistant ni profil de connexion.
- Certaines plates-formes cible requièrent l'ajout d'un SDK comme décrit dans la section suivante Exigences pour le débogage multi-périphérique.
Typiquement, le débogueur et le processus débogué s'exécutent sur la plate-forme cible. C'est le cas du périphérique iOS et du périphérique Android. Mais dans chaque cas, le débogueur 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 multi-périphériques 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.
Pour effectuer un débogage multi-périphérique :
- Votre application doit avoir une plate-forme cible activée :
- Windows 64 bits (depuis un PC de développement Windows 32 bits)
- macOS
- iOS
- Android (périphérique Android)
- Windows 32 bits et 64 bits à distance.
- Selon la plate-forme cible :
- Pour les plates-formes macOS et iOS :
- Platform Assistant doit être exécuté sur le Mac.
- Votre application doit être approvisionnée, avoir le code signé et un profil de connexion associé.
- Remarque: Il n'est pas nécessaire d'effectuer l'approvisionnement et la signature de code des applications macOS.
- 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.
- En outre, pour la plate-forme Périphérique iOS, un périphérique iOS provisionné doit être connecté au Mac par un câble USB.
- Remarque: Vous ne pouvez pas utiliser le débogueur intégré pour déboguer une application iOS compilée avec la configuration de plate-forme Magasin d'applications.
- Pour la plate-forme Windows 32 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. Cependant, si vous souhaitez déboguer à distance une application Windows 32 bits, vous devez définir l'option Inclure les symboles de débogage distant sur
True
dans Projet > Options > Compilateur Delphi > Liaison.
- 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. Cependant, si vous souhaitez déboguer à distance une application Windows 32 bits, vous devez définir l'option Inclure les symboles de débogage distant sur
- 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 l'action Tester connexion doit réussir dans 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. Cela vous permet d'utiliser le Gestionnaire de déploiement.
- Si vous êtes connecté à un PC 64 bits distant :
- Un SDK est requis (sur le Gestionnaire de SDK) pour les plates-formes et types d'applications suivants :
- Les applications multi-périphériques FireMonkey Delphi pour la plate-forme Périphérique iOS - 64 bits
- Les applications multi-périphériques FireMonkey Delphi pour la plate-forme Android
- Pour les plates-formes macOS et 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.
Démarrage du débogueur avec une commande 'Exécuter'
Quand toutes les exigences relatives au débogage multi-périphérique 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 macOS 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 multi-périphérique (pour macOS 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)
- Remarque: La commande Exécuter jusqu'au curseur n'est pas prise en charge pour le lancement du débogueur sur la plate-forme Android.
Démarrage du débogueur avec 'Attacher au processus' et 'Charger un processus 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. Certaines plates-formes ne sont pas prises en charge comme indiqué dans la boîte de dialogue Attacher au processus.
- Remarque: L'attachement à un processus en cours d'exécution n'est pas pris en charge dans le débogueur Embarcadero Linux 64 bits, le débogueur Embarcadero pour le périphérique iOS 64 bits, le débogueur Embarcadero Android 32 bits, le débogueur Embarcadero Android 64 bits, le débogueur Embarcadero macOS 64 bits et le débogueur Embarcadero macOS ARM 64 bits.
- Charger un processus Local pour charger un processus débogué local.
- Remarque: Le chargement d'un processus local n'est pas pris en charge dans le débogueur Embarcadero Linux 64 bits, le débogueur Embarcadero pour le périphérique iOS 64 bits, le débogueur Embarcadero macOS 64 bits et le débogueur Embarcadero macOS ARM 64 bits.
- 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. Certaines plates-formes ne sont pas prises en charge, comme indiqué dans la boîte de dialogue Charger un processus distant.
- Remarque: Le chargement d'un processus distant n'est pas pris en charge dans le débogueur Embarcadero Android 32 bits et le débogueur Embarcadero Android 64 bits.
- L'utilisation de Platform Assistant et d'un profil de connexion est recommandée ici.
Problèmes de minutage avec Charger un processus
Si vous rencontrez des problèmes lors du débogage d'une app macOS, c'est-à-dire que celle-ci se bloque immédiatement après que vous l'ayez exécutée à l'aide de Charger un processus, essayez de sélectionner l'option Ne pas exécuter ou Exécuter jusqu'au point d'entrée du programme (ces deux options sont disponibles sous la zone "Après le chargement"). Ces options peuvent résoudre les problèmes de minutage qui surviennent lorsque l'app est exécutée et accède à des événements de débogage, alors que le débogueur est configuré et prêt à gérer les événements. Ces problèmes de minutage peuvent provoquer l'arrêt intempestif du débogueur.
Voir aussi
- Présentation du débogage
- Débogueurs LLDB
- 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 apps iOS
- Exécution et débogage de votre application Android sur un périphérique Android à distance
- Acquisition de la permission permettant de prendre en charge le débogage sur un Mac
- Debugging optimized Win64 code (EN)