I too had this problem, but I just figured out how to resolve it.
1. In the project window, expand the disclosure triangle next to
Targets.
2. Under
Targets, select
Calculator.
3. On the toolbar, click on the Info button. A window titled "Target 'Calculator' Info" will appear.
4. In that window, select the Build tab.
5. In the combo box next to "Configuration," select "Active Configuration (Debug)."
6. In the combo box next to "Collection," select "Linking."
7. Uncheck the box next to
ZeroLink.
Now the "Step Into" example should work.
Here's what the
Xcode User Guide says about Zerolink:
Quote:
quote:ZeroLink speeds application development time by eliminating the link process from development builds. Instead, Xcode generates an application stub that contains the full paths to the object files that make up the application. At runtime, each object (.o) file is linked as itâs needed. This works only when running your application within Xcode. You cannot deploy applications using ZeroLink.
To turn ZeroLink on or off, use the ZeroLink (ZERO_LINK) build setting. ZeroLink is enabled by default in the Debug build configuration. If you build with this build configuration, you automatically get ZeroLink functionality. See âBuild Configurationsâ for more information on using build configurations. ZeroLink works only for native targets.
|
I gather the debugger finds this last-minute linking to be confusing. Another thing I noticed about Zerolink: originally I mistyped the name of the calculate function when I called it, and the error wasn't caught until runtime. This seems like a "feature" I can live without.
One thing confuses me. According to the release notes:
Quote:
quote:The projectâs build settings exist âbelowâ the targetâs build settings, so every target in a project will be based on the projectâs build settings.
For example, if you set âZero Linkâ to YES in the âDebugâ configuration for the project, it is used by default in the âDebugâ configuration on all targets in the project. Setting âZero Linkâ on the âDebugâ configuration of a target will override the setting inherited from the project.
|
Yet if you check the project build settings (select Project->Project Settings), Zerolink is unchecked. So the target's Zerolink setting isn't being inherited from the project. But then, where is it coming from?