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

Добавление пути поиска заголовка системы к Xcode

(Проводя этот вопрос для справочной цели, я немедленно отвечу)

Как добавить пути поиска заголовков к Xcode? Особенно если включить этот синтаксис:

include <myheader.h>
  • Добавление пути глобально ко всем проектам, таким как заголовки систем.
  • Добавление пути только к определенному проекту.
4b9b3361

Ответ 1

У нас есть два варианта.

  • Посмотрите на Preferences- > Locations → "Source Trees" в предпочтении Xcode. Путь, добавленный здесь, будет путём системного уровня и доступен для включения для всех проектов.

  • Установите параметр HEADER_SEARCH_PATHS в настройках сборки в информации о проекте. Я добавил "${SRCROOT}" здесь без рекурсии. Этот параметр подходит для большинства проектов.

О второй опции:

Xcode использует Clang, который имеет GCC-совместимую команду. GCC имеет опцию -Idir, которая добавляет пути поиска в системный заголовок. И этот параметр доступен через HEADER_SEARCH_PATHS в настройке сборки проекта Xcode.

Однако строка пути, добавленная к этому параметру, не должна содержать пробельных символов, потому что опция будет передана команде оболочки как есть.

Но некоторые пользователи OS X (например, я) могут помещать свои проекты в путь, включая пробелы, которые должны быть экранированы. Вы можете избежать его, как /Users/my/work/a\ project\ with\ space, если вы вводите его вручную. Вы также можете избежать их с помощью кавычек, чтобы использовать переменную среды, например "${SRCROOT}".

Или просто используйте . для указания текущего каталога. Я видел этот трюк в исходном коде Webkit, но я не уверен, что текущий каталог будет установлен в каталог проекта при его создании.

${SRCROOT} - предопределенное значение по Xcode. Это означает исходный каталог. Вы можете найти больше значений в Справочный документ.

PS. На самом деле вам не нужно использовать фигурные скобки {}. Я получаю тот же результат с $SRCROOT. Если вы знаете разницу, сообщите мне.

Ответ 2

Следите за ответами Eonil, связанными с настройками уровня проекта. Когда выбран выбранный объект и выбрана вкладка "Параметры сборки", в списке "Пути поиска для путей поиска заголовков" не может быть указана ссылка. В этом случае вы можете перейти на "Все" с "Основные" на панели поиска, а в разделе "Пути поиска" появятся пути поиска заголовков.

Ответ 3

Хотя у этого вопроса есть ответ, я решил его по-другому, когда у меня была такая же проблема. У меня была эта проблема, когда я копировал папки с опцией Create Folder references; то работало вышеприведенное решение о добавлении папки в файл build_path. Но когда папка была добавлена ​​с помощью параметра Create groups for any added folder, заголовки автоматически подбирались.

Ответ 4

Чтобы использовать кавычки только для полноты.

"/Users/my/work/a project with space"/**

Если не рекурсивно, удалите /**