Ответ 1
Работает для меня.
Не забудьте добавить библиотеку в разделе Link Binary en Build Phases раздела целевого проекта.
Я интегрирую приложение twitter в мое приложение, мое приложение создано в xcode 4.2
с использованием ARC, когда я реализовал код для twitter из этого кода.
он отлично работал, когда я просто загружал проект и запускал его. когда я интегрирую этот код sdk twitter в моем приложении xcode 4.2
, он дал мне ошибку 'libxml/xmlreader.h' file not found
, я решил его просто изменить заголовочный файл таким образом #include <libxml2/libxml/xmlreader.h>
, но после изменения этой предыдущей ошибки был решен, но я получил новую ошибку 'libxml/xmlversion.h' file not found
. Я попытался изменить заголовок файла xmlreader.h
, но этот файл не редактируем. Я также изменил разрешения для этого файла. но это не сработало. в формате #include <libxml2/libxml/xmlreader.h>
, но он не работает.
Скажите, пожалуйста, как решить эту ошибку.
Я видел несколько вопросов в переполнении стека для некоторого такого вопроса
но они не работали для меня в xcode 4.2. пожалуйста, направляйте меня.
Работает для меня.
Не забудьте добавить библиотеку в разделе Link Binary en Build Phases раздела целевого проекта.
Вам нужно поместить все заголовки libxml в путь include. Для Xcode выполните это, добавив /usr/include/libxml2
в пути заголовка (который передаст -I/usr/include/libxml2 в компилятор c)
Это находится на вкладке "Настройки сборки" в "Пути поиска" → "Пути поиска заголовков"
Перейдите в Project → Build Settings и найдите "Пути поиска заголовка пользователя" и добавьте это значение:
"$ {SDK_DIR}" /USR/ включать/libxml2
Он отлично работает в моем xcode 4.5 + iOS 6
У меня была такая же проблема, как и вы. Для меня проблема заключалась в том, что я настраивал "путь поиска заголовка" в настройках сборки проекта, но мои настройки целевой сборки отменили эту настройку. Я исправил это, добавив строку $(унаследованная) в пути поиска заголовков Target Build Settings.
В настройках сборки для ключа "Пути поиска заголовков" добавьте "$ (SDK_DIR)" /usr/include/libxml 2
Я получил те же ошибки и пришел сюда, затем нашел ответ в нижнем URL-адресе https://github.com/ZaBlanc/RaptureXML#adding-rapturexml-to-your-project
Надеюсь, это поможет вам, я решил это сейчас.
Если вы используете CocoaPods и получите эту ошибку, вам придется разбить спецификацию и следующие строки:
s.libraries = 'xml2'
s.xcconfig = { 'HEADER_SEARCH_PATHS' => '$(SDKROOT)/usr/include/libxml2' }
Вам нужно будет удалить Pod, а затем снова установить его, а podspec укажет на вашу вилку. Причина, по которой вы должны разблокировать Pod, заключается в том, что Target, где вы обычно меняете это, генерируется CocoaPods при выполнении установки pod.
Обратите внимание, что если у вас есть другие библиотеки, на которые зависит Pod, включите их в строку s.libraries.
Источник для этого исправления в выпуске CocoaPods "Проблемы интеграции с подписями"
Добавить путь поиска заголовка как $(SDKROOT)/usr/include/libxml2
Обязательно используйте нерекурсивный параметр, когда вы добавляете ключ "Пути поиска заголовков".
/usr/include/libxml2
- это вариант без повторной проверки
/usr/include/libxml2\**
- это рекурсивный вариант и WILL
В XCode 5: