Debugging on Mac OS X
Open a project
Each WebKit component -- JavaScriptCore, WebCore, and WebKit -- contains its own Xcode project. Open the project belonging to the component you want to debug.
Set the project's build products location
To find the WebKit you built, Xcode needs to know the build products location that build-webkit used. You can set the build products location from the project's Info window.
Set the project's active build configuration
Xcode also needs to know the build configuration you used. You can set the active build configuration from the project's Build window.
Add a custom executable to the project
Choose any WebKit application you want to use for debugging. To use Safari, select /Applications/Safari.app.
Set the project's active executable
You can set the active executable from the project's Build window. Choose the executable you just added.
Close and re-open the project
This will force Xcode to discover generated source files, which output to your build products location, allowing you to set breakpoints in them.
Launch the debugger
In the Debugger window, click the "Debug" button.
Debugging on Windows
To launch Safari in the Visual Studio or Visual C++ Express debugger, simply run:
debug-safari
This command will launch the Visual Studio debugging environment, and attach to Safari connected to the debug build of WebKit.dll. There are a few things to keep in mind:
- The instance of Safari is not running yet. You must press the F5 key (or the 'Run' button) to see anything happen.
- If you want to set any breakpoints, you must navigate to the particular source file you wish to investigate using the "File|Open" menu.
If you want to see the helpful output debug messages, you should edit the debug settings for the Safari solution (i.e., the pseudo-project created when the debugger attached to Safari):
You should consider including the command-line switch '/console'. This causes Safari to run with an open DOS shell in which output messages, created with the LOG macro, appear.