Как сделать так, чтобы Xcode правильно находил заголовки, используя «Пути поиска заголовков пользователей»? - PullRequest
2 голосов
/ 27 января 2011

Я пытаюсь построить фреймворк из libFLAC с Xcode, чтобы использовать его в моем собственном приложении Mac OS X.

Я использую следующие источники FLAC:

http://sourceforge.net/projects/flac/files/flac-src/flac-1.2.1-src/flac-1.2.1.tar.gz/download

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

flac-1.2.1.tar.gz содержит следующие каталоги:

flac-1.2.1/include/
flac-1.2.1/src/libFLAC/
flac-1.2.1/src/libFLAC/include/

В порядкечтобы собрать libFLAC, я добавил в проект файлы .c из 'flac-1.2.1 / src / libFLAC' (в качестве ссылок).Я также добавил файлы .h.

Заголовки, используемые в исходном коде, находятся в:

flac-1.2.1/include/FLAC/
flac-1.2.1/include/share/
flac-1.2.1/src/libFLAC/private/

Например, вызовы исходного кода для заголовка:

#include "private/bitmath.h"
#include "FLAC/assert.h"
#include "private/bitwriter.h"
#include "private/crc.h"
#include "share/alloc.h"

и т. Д.

В XCode я добавил эти «Пути поиска по заголовкам пользователей» в целевые настройки сборки:

$(SRCROOT)/flac-1.2.1/include/
$(SRCROOT)/flac-1.2.1/src/libFLAC/include/

И, конечно, я разместилмой каталог flac-1.2.1 находится в нужном месте.

Когда я хочу скомпилировать, компилятор не находит файл заголовков.Я пробовал с GCC 4.2 и LLVM-компилятором 2.0.Что я делаю неправильно?Должен ли я сделать что-то большее?

Я новичок в импорте исходных кодов C в свой проект, полностью совместимый с ObjC, и я был бы рад попробовать все, что вы мне бросите.Просто, пожалуйста, избегайте ответов «Если вы не можете этого сделать, вы не должны этого делать».Мне нужно изучить это, и я буду.

1 Ответ

1 голос
/ 28 января 2011

Хорошо, у меня есть ответ, это было действительно глупо.Путь к папке моего проекта Xcode содержал пробел.Компилятору это не нравится;)

...