When debugging an executable in Xcode, I very often have to open up a terminal window, navigate to the executable's working directory and do some work there. Is there any way to have Xcode automatically open a terminal window at this location each time I debug my program?
问题:
回答1:
In Xcode, go to your Target, then right-click and choose:
Add -> New Build Phase -> New Run Script Build Phase
then add the following:
open /Applications/Utilities/Terminal.app
Now, every time you Build your app, Xcode will run this build script and launch Terminal. Note that you need to point to the correct location of the terminal application. Best way to do this is find the Terminal.app and drag and drop it onto the above screen after you type "open".
Once you have Terminal open, you will need to make an AppleScript to send the commands to Terminal to open the specific directory. Use the 'osascript' command to send an AppleEvent to Terminal.
回答2:
For anyone who's still looking,
It's really easy.. say you want to click run and have the app run in the Terminal. Here's what you do:
Go to Build Phases -> Editor -> Add Build Phase -> Add Run Script Build Phase -> Click the down arrow on Run Script -> Add the following:
open /Applications/Utilities/Terminal.app /Users/yourusername/restofpath
Notes: Spaces use '\ ' if needed. Include your app name in the path. Don't use quotes.
Click Run, and there you go!
If you want the Terminal to clear, in your source code type 'system("clear")' near main(). It's the only solution I have while debugging. Works great.
回答3:
Check my answer here to see how to setup Xcode scheme to fully automate debugging with using Terminal. I described it for ncurses that requires real Terminal to work.