XCode: файл не найден? - PullRequest
       10

XCode: файл не найден?

0 голосов
/ 24 октября 2009

У меня есть цель, которая использует классы из статической библиотеки (файл .a).

У меня есть статическая библиотека в XCode, она требуется для цели и находится в разделе «Связанные библиотеки».

В коде я использую класс из статической библиотеки, такой как:

#include "class_from_static.h"

Но XCode жалуется, что файл "class_from_static.h" не найден. Разве это не должно найти это?

Я убедился, что статическая библиотека действительно содержит этот класс.

В чем проблема?

Ответы [ 3 ]

2 голосов
/ 24 октября 2009

Статические библиотеки не похожи на фреймворки; они содержат только код, а не заголовки. Вам необходимо добавить папку, содержащую class_from_static.h, в пути поиска заголовка пользователя или просто добавить файл заголовка непосредственно в проект. Если дважды щелкнуть параметр, вы можете перетащить папку в список.

1 голос
/ 01 августа 2011

Попробуйте также с родительской папкой. Например, предполагая, что class_from_static.h находится в каталоге с именем Static (который также должен быть именем статической библиотеки), вы можете попробовать:

#include <Static/class_from_static.h>

Кроме того, не забудьте добавить в «Пути поиска заголовка» вашего проекта в «Настройках сборки» путь к каталогу (относительно корня вашего проекта), который содержит каталог Static выше (который также может называться Static). Например, Vendor/Static, который будет содержать другой каталог с именем Static:

ProjectDir
|- Vendor
   `- Static
      `- Static
        `- class_from_static.h

Вот как структурируется SSToolkit .

1 голос
/ 24 октября 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...