2012-02-15 1 views
6

У меня есть проект iOS статической библиотеки ProjectCore, который я хочу включить в проект MyProject.Заголовки для моей статической библиотеки не найдены

В проекте библиотеки я поставил:

PUBLIC_HEADERS_FOLDER_PATH = $(TARGET_NAME) 

Так что я в конечном итоге со следующей структурой

libProjectCore.a 
ProjectCore (Folder) 
+- ProjectCore.h 
+- ProjectCoreUtil.h 

В каталоге /.../DerivedData/MyProject-xyzabcd/Products/Release-iphoneos/

Теперь установка MyProject

  • Добавить ProjectCore как мерзавца субмодуля рядом с MyProject.xcodeproj
  • Перетащите ProjectCore.xcodeproj в Xcode
  • Добавить проект как зависимость
  • Link против libProjectCore.a
  • я установил это «Header Search Path», чтобы $(BUILT_PRODUCTS_DIR), который должен указывать на папка выше.

Любопытно ни один из подходов работы:

#import "ProjectCore.h" // With the (Recursive Flag set for the Headers) 
#import <ProjectCore/ProjectCore.h> // The way RestKit does it 

ответ

4

Я предлагаю использовать ${TARGET_BUILD_DIR}/ProjectCore в User Header Search Paths - это работает для меня.

+0

Можете ли вы объяснить, почему вы используете «Пути поиска заголовка пользователя» вместо «Пути поиска заголовков»? – Besi

+3

Вот хорошее объяснение http://stackoverflow.com/questions/3429031/header-search-paths-vs-user-header-search-paths-in-xcode – Johnnywho

+0

Моя проблема была фактически связана с тем, что содержащий проект конфигурацию 'preview', которая отсутствовала в проекте библиотеки и поэтому не находила заголовки, поскольку их местоположение основано на конфигурации (' Release-iphoneos'). – Besi