【问题标题】:iOS CorePlot how to installiOS CorePlot 如何安装
【发布时间】:2015-01-30 12:55:26
【问题描述】:

我正在尝试在我的一个 iOS 项目中使用 CorePlot,但即使按照说明并在网上四处查看,我也没有设法正确安装框架。我觉得文档没有发展,不再描述安装框架的正确方法。

我关注了these instructions。但是有些事情对我来说没有意义,要么是因为它们不再是最新的,要么是因为我不明白。

例如,当我被告知将库添加到“使用二进制链接二进制文件”部分时,Core Plot 库以红色突出显示。然后当我被告知要编辑标题搜索路径时,我不明白该怎么做,因为我拖入项目的 .xcodeproj 文件没有“框架”文件夹。

任何人都可以提供最新的、适合新手的说明吗?

谢谢。

编辑:我尝试按照以下说明进行安装(手动安装),现在出现三个错误:

Undefined symbols for architecture x86_64:
  "_vDSP_maxvD", referenced from:
      -[CPTPlot plotRangeForField:] in libCorePlot-CocoaTouch.a(CPTPlot.o)
  "_vDSP_minvD", referenced from:
      -[CPTPlot plotRangeForField:] in libCorePlot-CocoaTouch.a(CPTPlot.o)
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

【问题讨论】:

  • 也许这会对你有所帮助:raywenderlich.com/13269/…
  • Core Plot 存储库已移至 GitHub。更新的安装说明位于wiki
  • 我读过它们,我只是无法让它工作,因为我只是不习惯安装这些东西,我想......
  • 我已针对您所面临的问题发布了正确的解决方案,并提供了有关该问题的更多详细信息的链接,请检查并验证我的答案。

标签: ios objective-c core-plot


【解决方案1】:

如果您使用 Cocoapods,Foundry 的回答非常棒,但我会为您提供手动操作的分步指南:

  1. 创建一个名为 Workspace 的文件夹,并从 Xcode 中在其中创建一个新的“testCoreplot”项目。
  2. 下载 CorePlot,并将“Source/framework”文件夹复制到您的工作区文件夹中。将其重命名为“CoreplotFramework”以避免以后以这种方式添加其他框架时出现问题。

你应该有这个:

  1. 启动您的 testCoreplot 项目,并从其中的查找器中拖动文件“CorePlot-CocoaTouch.xcodeproj”。
  2. 选择 testCoreplot 目标,进入“Build Phases”选项卡,在“target dependencies”部分添加“CorePlot-CocoaTouch”,在“Link Binary With Libraries”部分添加“libCorePlot-CocoaTouch.a”。添加@987654327 @ 框架也适用于 2.0 版。

  1. 转到“构建设置”选项卡,查找“标题搜索路径”并添加 $(SRCROOT)/../CoreplotFramework 。请务必选择recursive

  1. 仍在此“构建设置”选项卡中,添加-ObjC 标志

  1. 转到 ViewController.m 并添加

    #import "CorePlot-CocoaTouch.h"
    
  2. 编译,应该一切正常!

【讨论】:

  • 非常感谢您非常彻底的回复。你说的我都做了。只是为了确保,我复制到我的工作区的文件夹是“框架”文件夹,它包含头文件、可可 XCode 项目以及“源”子文件夹中的所有 .h 和 .m 文件。我收到与标题搜索路径相关的三个错误。有关详细信息,请参阅我的问题。非常感谢。
  • 你复制了正确的文件夹,不用担心 ;) 我的例子是为 1.5.1 版本制作的,但是使用 2.0 版本我得到了同样的错误。根据github.com/core-plot/core-plot/issues/76,您必须添加Accelerate 框架,它会编译正常。您可以按照我的示例第 4 步“将二进制文件与库链接”进行操作,然后搜索“加速”
  • 您好,当我尝试导入头文件时,我仍然收到'Core-Plot-CocoaTouch.h" file not found。我注意到我的libCorePlot-CocoaTouch.a 以红色突出显示
  • 没关系,不确定发生了什么变化,但它正在工作。感谢您的出色回答
  • @Momo 我也有同样的问题! :-\
【解决方案2】:

Core Plot 提供了一个podspec,因此您可以使用cocoapods 作为您的库管理器,这将使安装和更新更加简单

  1. Install cocoapods 在您的系统上
  2. 在您的项目中添加一个名为 Podfile 的文本文件
  3. 在 Podfile 中添加行 pod 'CorePlot', '~> 1.5'
  4. 在终端中,cd 到您的项目目录并运行pod install

Cocoapods 将生成一个xcworkspace 文件,您应该使用它来启动您的项目(.xcodeproj 文件将不包含 pod 库)

【讨论】:

    【解决方案3】:

    @foundry 的回答对我来说最有效。我尝试过的所有其他事情都引发了很多奇怪的问题。

    我是这样做的: 在目录项目的根目录下,创建一个名为Podfile(无txt扩展名)的纯文本文件,然后在其中添加以下内容:

    target 'App Name' do pod 'CorePlot', '~> 2.2' end

    App Name 是您的应用名称,即MyApp.xcodeproj,然后只需使用MyApp

    然后,从您的终端运行 pod init,然后运行 ​​pod install。此后,从 Finder 中,不再运行原来的 MyApp.xcodeproj,而是运行新创建的 MyApp.xcworkspace

    它就像一个魅力......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多