【问题标题】:Setting up Xcode for developing Plug-ins设置 Xcode 以开发插件
【发布时间】:2010-12-24 15:43:42
【问题描述】:

我以前从未在 XCode 中工作过,但我正在为一个名为 OsiriX 的开源放射学程序设计一个插件 (objective-c)。我可以编译这个东西,我什至可以让插件在 OsiriX 中运行。但是,我不确定如何从 XCode 运行/调试它。运行/调试在我的 xcode 上显示为灰色。是因为没有主程序吗?

【问题讨论】:

  • 你能剪切和粘贴你项目中涉及的目录结构和/或文件吗?有时 XCode 需要这些来运行和调试项目。
  • 这是一个很棒的通用 Xcode 开发问题。我更改了标题以使其更能反映它的普遍适用性。
  • 我已经设法弄清楚如何从 XCode 运行我的插件,但是当我插入断点并“在断点上运行”时它不会在断点处停止。有什么建议吗?

标签: objective-c cocoa xcode debugging plugins


【解决方案1】:

(1) “清理所有”您的项目,以便在执行此操作时不会留下碎屑。

(2) 将 Xcode 设置为使用通用的构建产品目录(我将我的放在 /tmp/ 中,以便它定期被核弹)。首选项位于“建筑”部分下。

(3) 重新构建 OsiriX(以便将其构建在共享位置)。

(4) 确保您的插件项目中的活动配置与您在 (3) 中构建的 OsiriX 中的配置具有完全相同的名称。 (它可能应该是“Debug”或“Release”,具体取决于您构建的版本)。可以在构建设置编辑器中编辑配置。

(5) 构建您的插件。

(6) 将自定义可执行文件添加到您的插件项目中,并将路径设置为 OsiriX (Project -> New Custom Executable...)。

您现在应该能够构建并运行或构建并调试您的项目。它将从构建产品目录启动 OsiriX。如果还没有,您可能还想设置 OsiriX 以在您的构建产品目录中查找捆绑包。或者,您可以创建一个从 OsiriX 插件目录之一到构建产品目录中的捆绑包的符号链接。

cd /path/to/OsiriX's/bundle/directory
ln -s /path/to/build/products/YourPlugin.bundle

这是配置 Xcode 以开发插件的一种非常标准的方式。例如,首选项窗格开发人员将为 SystemPreferences.app 设置自定义可执行文件(即使在 /Applications 中——无需指向应用程序的“调试”版本)。

【讨论】:

    【解决方案2】:

    为了调试您的插件,您还必须在 Xcode 中运行 Osirix。从 Github 下载 Osirix 源代码并编译并运行它。您必须将插件添加到其插件列表中,然后当您在 Xcode 中运行时,来自插件源的 NSLog 语句将在主 Osirix 程序的 Xcode 控制台屏幕中打印出来。我相信断点也可以。

    【讨论】:

      【解决方案3】:

      我使用 Xcode 的经验也有限,但我发现使用最新版本 (6.1.1) 我可以通过 Debug -> Attach Process 菜单附加到正在运行的 OsiriX 进程来调试我的插件。这要求您从源代码构建 OsiriX - 我目前使用的是从他们的网站下载的标准(非 MD)版本。

      请注意,您仍然需要重新启动 OsiriX 以获取对插件的任何更改。

      【讨论】:

        猜你喜欢
        • 2011-09-13
        • 1970-01-01
        • 2013-11-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多