Использование Core Plot 2 в проекте Xcode 5
Я использую инструкции здесь, чтобы интегрировать Core Plot в мой проект iOS Xcode 5, и у меня нет никаких проблем.
Я попытался использовать Static Library Install, но, похоже, это относится к 1.4, так как нет каталога с именем CorePlotHeaders
, хотя, если я попытаюсь использовать 1.4, я запускаю проблемы во время выполнения.
Затем я попытался перетащить CorePlot-CocoaTouch.xcodeproj
, как описано в Dependent Project Install, но это копирует его только как файл, а не весь проект.
Есть ли более современные инструкции для использования в качестве статической библиотеки или как я неправильно копирую проект в свой проект?
Ответы
Ответ 1
Если вы хотите использовать статическую библиотеку, создайте ее, используя цель "Универсальная библиотека". Это поместит статическую библиотеку и папку CorePlotHeaders в папку build внутри вашего каталога Core Plot.
Чтобы использовать зависимый проект, перетащите файл проекта из Finder в Xcode в проект приложения в панели браузера в левой части окна Xcode. Не забудьте установить "Пути поиска заголовков" в настройках сборки приложения или не сможете найти заголовки основного графика.
Ответ 2
Ниже приведены некоторые текущие шаги для добавления в проект статической библиотеки Core Plot:
-
загрузите последнюю версию CorePlot здесь
-
перейдите в папку CorePlot и запустите CorePlot-CocoaTouch.xcodeproj
-
построить (не запускать) проект CorePlot-CocoaTouch.xcodeproj
-
вернитесь в папку загрузки CorePlot > build > Debug-iphoneos и подтвердите libCorePlot-CocoaTouch.a
. Если нет, разархивируйте загрузку и повторите шаги 1-4
-
назад в Xcode выделите проект CorePlot-CocoaTouch
-
щелкните "Продукт" > "Схема" > выберите "Универсальная библиотека" (выбирает, какую цель нужно создать)
-
снова выполнить проект (не запускать)
-
перейдите в папку загрузки CorePlot > build > Release-universal, и вы увидите, что папка CorePlotHeaders
и libCorePlot-CocoaTouch.a
доступны
-
откройте проект Xcode, который вы хотите добавить статический CorePlot к
-
добавьте в проект файл CorePlot > build > Release-universal > CorePlotHeaders и файлы libCorePlot-CocoaTouch.a(выберите "копировать элементы в папку целевой группы" )
-
выберите свой проект и в разделе "Связывание" найдите "Другие флаги компоновщика" и добавьте -ObjC
-
из вашей цели > Фазы сборки > Свяжите двоичные файлы с библиотеками добавьте в проект проект рамки QuartzCore
-
Если libCorePlot-CocoaTouch.a
не находится в списке Link Binary With Libraries, перетащите его из того места, где вы скопировали его в свой проект в список библиотеки, чтобы добавить его.
Теперь вы должны иметь возможность
#import "CorePlot-CocoaTouch.h"
(автозаполнение) к viewController, который вы будете использовать для управления вашим CorePlot.
Если вы следуете старой документации о том, как использовать CorePlot, помните, что новый префикс CPT
(не CP
, отрегулируйте соответствующим образом)
Счастливое кодирование!
Ответ 3
Используйте Cocoapod для установки необходимых библиотек вместо этого ручного шага, если вы хотите решить эту проблему за 1 минуту... (перейдите по этой ссылке и перейдите к последней ветке: iOS CorePlot, как установить)
Ответ 4
Как и вышеприведенные шаги, вам нужно включить -all_load в опции компоновщика, иначе он не будет работать на Xcode 7.1.1