FMDatabase.h не найден при использовании библиотеки route-me

Итак, я пытаюсь использовать виджет route-me в своем приложении, но xcode продолжает жаловаться, что не может найти FMDatabase.h, но он включен в проект (хотя и в рамках другого проекта, который включен в мой проект). Я скопировал, как был создан образец приложения, но образец проекта не получает эту ошибку. Файл RMDBMapSource.h содержится в проекте MapView, поэтому мне не нужно самостоятельно включать материал fmdb (и поскольку пример проекта этого не делает)

введите здесь описание изображения

введите здесь описание изображения

Конечно, если файлы находятся в источниках компиляции/копии заголовков на этапах сборки, это означает, что он должен найти файл? Это довольно тусклое объяснение моей проблемы, но если кто-то уже использовал библиотеку route-me, возможно, у него была такая же проблема, и он может указать мне правильное направление.


person Fonix    schedule 28.03.2013    source источник
comment
Проверьте, импортируется ли он как #import "FMDatabase.h", и если это так, вы можете попробовать #import <FMDatabase.h>...   -  person jjv360    schedule 28.03.2013
comment
я только что пробовал, не работает. в любом случае мне не нужно это менять, так как все это связано с этим проектом MapView, поэтому я не думаю, что это случай неправильного кода, просто xcode глупый   -  person Fonix    schedule 28.03.2013
comment
Вы показали в .h в источниках сборки. .m тоже есть? Вам не нужны файлы .h там. Вам нужны файлы .m.   -  person Rob    schedule 28.03.2013
comment
да, .m есть, я думаю, что я решил половину этого, ошибка FMDatabase.h not found исчезла.. но теперь я получаю ошибку компоновщика Undefined symbols for architecture i386: "_OBJC_CLASS_$_RMMapView", referenced from: objc-class-ref in InfoTableHelper.o, что странно, потому что я также ссылаюсь на RMMapView из другого файла, и это не выдает ошибку компоновщика. (пробовал ссылаться на него только в одном файле за раз, и это дает ошибку только для infoTableHelper)   -  person Fonix    schedule 28.03.2013
comment
хорошо, то, что я сказал, полуложно, у него есть ошибка компоновщика, где бы я ни делал [RMMapView alloc]init], что странно.. если у меня есть RMMapView *map = [array objectAtIndex:0], тогда все в порядке с этим   -  person Fonix    schedule 28.03.2013


Ответы (1)


Исправил свою ошибку. Во-первых, в настройках сборки основного проекта «поиск путей к заголовкам» был установлен неправильно, он был установлен на /MapView/ вместо /MapView/**, что устранило ошибку отсутствия FMDatabase.h.

Затем, если у кого-то еще возникла ошибка компоновщика, как у меня после того, как я решил первую проблему, убедитесь, что вы включили libMapView.a в свой двоичный файл ссылки с разделом библиотек. (у меня это было раньше, но во время фиксации контроля версий каким-то образом наш файл проекта решил больше не добавлять эту библиотеку, и я полностью забыл о ней, поэтому мне потребовалось довольно много времени, чтобы узнать, что она отсутствует)

person Fonix    schedule 02.04.2013