Подтвердить что ты не робот

Включить заголовки из добавленных фреймворков на Xcode

Я хочу работать с некоторыми фреймворками, такими как glew и cg, поэтому я добавил вручную

необходимые рамки для моего проекта, щелкнув правой кнопкой мыши проект → Добавить файлы в...

и выбирая правильную структуру. Проблема в том, что когда я пытаюсь включить файлы заголовков,

Xcode не может найти ни одного из них. Надеюсь, эта картина поможет понять:

enter image description here

и

enter image description here

Указанная ошибка относится к структуре glew, но это также происходит на cg.

Как вы можете видеть слева, были добавлены необходимые фреймворки.

Любая идея о том, как я могу включить эти заголовки?

После попытки добавления файлов заголовков вручную я получил ошибку архитектуры:

enter image description here

Я не знаю, как это должно выглядеть. Спасибо!

4b9b3361

Ответ 1

Перед запуском удалите фреймворк и все файлы, которые вы добавили, пытаясь заставить его работать.

Затем вам нужно добавить фреймворки в Build Phases вашей цели. Затем перейдите в Link Binary With Libraries и выберите свою структуру.

Это должно сделать это. Ваши заголовки должны быть доступны как автоматическое завершение после каждого #import directive. Если он не работает (иногда это происходит), есть дополнительные шаги, которые я могу вам предоставить.

Дополнительные шаги:

Перейдите в настройки вашего проекта в настройках сборки:

  • Заполните Framework Search Paths с помощью пути к вашей инфраструктуре
  • Сделайте то же самое с User Header Search Path

Затем он должен работать. Если это не так, вам нужно будет добавить полный путь к заголовку в директиве #import. Пример:

#import "/path/to/my/header.h"


Документация Apple доступна здесь:

  • В навигаторе проекта выберите ваш проект
  • Выберите цель
  • Выберите вкладку "Сборка фаз"
  • Откройте 'Link Binaries With Libraries' расширитель
  • Нажмите кнопку "+"
  • Выберите фреймворк
  • (необязательно) Перетащите добавленный рамки для группы "Frameworks"

Ответ 2

В моем случае я добавил Framework Search Paths для Target, но его нужно добавить в Project

enter image description here

Также Always Search Users Path должен быть yes

Ответ 3

Для тех, автозаполнение которых не выполняется после добавления фреймворка.

Я использовал для добавления фреймворков, перейдя в Build Phases и выбрав параметр Link Binary with Libraries. Теперь в XCode 6.1, хотя проект строился нормально, автозаполнение в XCode не работало.

Итак, что нужно сделать:

  • Удалите уже добавленную структуру из Project Navigator, а также из Link Binary with Libraries.
  • Добавить фреймворк для проекта просто FileAdd Files to в XCode.

И автозапуск начнет работать.

Ответ 4

В моем случае внешняя инфраструктура была загружена с помощью Windows и добавлена ​​в проект. Затем он был перенесен в OSX, где был построен проект Xcode, и внешняя структура не загружалась должным образом. Я предполагаю, что это связано с тем, что Windows изменяет папку фрейма как обычную папку, с которой OSX возникает проблема.

Решение для меня состояло в том, чтобы просто загрузить фреймворк с помощью OSX и перетащить его в папку фреймворка в проекте XCode.