【发布时间】:2013-06-29 07:05:12
【问题描述】:
我们有一个项目,我们在其中使用 SketchUp 8 C++ API 从 SketchUp 文件中提取信息。 SketchUp 团队成员告诉我们,与 SketchUp 2013 SDK 捆绑的已弃用 C++ 框架可用于使用已弃用的 C++ API 读取 SKP 2013 文件。这不是开箱即用的,目前还不清楚我做错了什么。我将我的问题发布在 stackoverflow 上,以防它对其他人有用。
我在 Mountain Lion 上使用 XCode 3.2.2 构建我的项目,构建到 OS 10.5 i386 的基础 SDK。
我删除了我的 XCode 项目的 SketchUp.framework 和 SketchUpReader.framework,并将它们添加到了 SKP 2013 SDK 的 deprecated/SkpReader/Binaries/Mac/ 文件夹中。执行“清理所有目标”并构建会产生数千个错误。一些例子:
.../SketchUpReader.framework/Headers/Variant.h:79: error: multiple definition of 'enum VARENUM'
.../SketchUpReader.framework/Headers/windef.h:217: error: variable or field 'Sleep' declared void
.../SketchUpReader.framework/Headers/comptr.h:17: error: redefinition of 'class _NoAddRefReleaseOnCComPtr<T>'
大多数错误都属于这种形式 - 有些东西有以前的定义。
我的第一个想法是它仍然包含来自某个地方的旧版本的 C++ 框架,并且新旧有冲突,但是我在 Xcode 项目的框架列表中没有看到任何其他对 SketchUp 框架的引用,或在 /Library/Frameworks 中。
我并不十分精通构建 C++ 项目或使用 XCode,所以这可能是一个天真的问题,但如果有人知道这里发生了什么,我会很感激一些指导。
【问题讨论】:
标签: sdk deprecated sketchup