Comment exécuter l'application en ligne de commande depuis le terminal?
Je suis un converti récent à partir de Windows pour Macbook Pro. Je suis arriver utilisation de Xcode. Une chose que je voudrais profiter de l'est lors de l'exécution d'une application de débogage dans le terminal. Actuellement, je dois appuyer sur Commande+R pour compiler et exécuter dans Xcode. Pour avoir de l'exécution de l'application dans le terminal, j'ai à faire un pas supplémentaire en ouvrant le dossier de Produits, cliquez-droit sur l'application, puis "Ouvrir qu'à l'Extérieur de l'Éditeur'. Ensuite, le terminal s'ouvre et exécute le programme.
J'aimerais que ce comportement fonctionne automatiquement en appuyant sur Commande+R. Il me semble qu'il y aurait un paramètre pour indiquer la sortie.
Existe-il des étapes à suivre pour accomplir cette?
OriginalL'auteur Phil | 2011-10-15
Vous devez vous connecter pour publier un commentaire.
Tout d'abord, créez un nouveau projet (ou de modifier l'actuel) et de modifier le fichier exécutable à la Terminale.app:
Puis, sous les "Arguments" de l'onglet, assurez-vous que "la Base des Expansions Sur" est mis à votre Application. Ensuite, mettre
open -a ${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}
La commande obtenir étendue à quelque chose comme
open -a /Users/Me/Library/Developer/Xcode/DerivedData/MyProj-abcdefghijklmnopqrrstuvwxyz/Build/Products/Debug-iphonesimulator/Universal.app
open -a
est de savoir comment vous ouvrir une Application à partir de la ligne de commande.Edit: Utiliser
${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}
à la place (voir les commentaires).Il a travaillé après la modification de l'argument: ${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME} Merci.
Très cool! Votre accueil @Phil.
Comment passer des arguments pour que l'exécutable?
Je crois que vous pouvez simplement les ajouter à la fin de la commande
open -a ${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME} ARG1 ARG2
. Vérifierman open
mais je pense que tous les arguments donnés après le nom de l'application sont passés comme arguments directement à l'application.OriginalL'auteur chown
Bâtiment sur chown est perspicace idée:
Créer un fichier AppleScript contenant:
Ce AppleScript ouvre le Terminal.app et exécute le premier argument de ligne de commande à l'intérieur du Terminal.app
Dans ma configuration, je l'ai enregistré comme
runproduct.scpt
sous$HOME/bin
.Ajouter un nouveau régime (vous pouvez dupliquer votre régime actuel) ou de modifier votre régime actuel. Dans l'onglet Info, définir le fichier exécutable à
/usr/bin/osascript
, qui est un programme qui exécute des AppleScripts:Dans les Arguments onglet, ajouter deux arguments: l'AppleScript emplacement (
${HOME}/bin/runproduct.scpt
) et la cible exécutable emplacement ("${BUILT_PRODUCTS_DIR}/${FULL_PRODUCT_NAME}"
), ce dernier étant le premier argument passé à la AppleScript:Je ne suis pas sûr si cela peut être fait de travailler avec le débogueur.
Salut Thomas, je sais que c'est très tard, mais pour le bénéfice des autres, après la définition de vos points d'arrêt dans le code et après le lancement, cliquez sur Debug->Attacher au Processus et sélectionnez le processus que vous souhaitez LLDB attacher.
OriginalL'auteur
Dans Xcode (au moins à 8 version) il y a une case à cocher "Utiliser la Borne" disponible à partir de Modifier le Schéma... > Exécuter > Options > Console. Avec cette option, Xcode commence Terminal système.application avec votre binaire ci-joint (à des fins de débogage par exemple).
vous pouvez toujours installer les anciennes versions de XCode à partir de developer.apple.com/download/more Il n'est pas commode, mais peut aider dans certains cas. Pour être honnête, en cours d'exécution avec le Terminal n'était pas parfait à cause de problèmes de lancement, il parfois (souvent j'ai dû redémarrer le Terminal après la deuxième manche pour être en mesure de joindre à nouveau)
OriginalL'auteur MikeR