2017-02-10 2 views
10

Во время фазы привязки iOS я начал видеть ошибки для моего проекта React Native.Реальные исходные заголовки базы для ios не найдены

Реагировать Native версия: 0.41.2, 0.40, 0.39

Все работало нормально, я редактировал Android версии React Машинный код не изменился, когда такого рода связь ошибки начали появляться с заголовками на /node_modules/react-native/React/Base/{RCTHeaderName.h} пути не был найден:

The error

In file included from /Users/user/ReactNativeProject/node_modules/react-native-vector-icons/RNVectorIconsManager/RNVectorIconsManager.h:9: 
../react-native/React/Base/RCTBridgeModule.h:12:9: fatal error: 'React/RCTDefines.h' file not found 
#import <React/RCTDefines.h> 
     ^
  • В Ссылка Binary с библиотеками Включая библиотеку ядра React (libReact.a).

  • Расположение RCTLog.h является PROJECTROOT/node_modules/react-native/React/Base/RCTLog.h, но импорт #import <React/RCTLog.h>

  • Новые добавления React.xcodeproj в библиотеках не помогает, Xcode-х Product > Clean не помогает, ни делает перезапуск Xcode

  • react-native run-android работ, react-native run-ios показывает ошибку

  • Файл набор разрешений для пользователя, выполняющего react-native run-ios

ответ

17

У вас есть Parallelize build вариант бесконтрольно и React первым в списке ваших целей сборки?

Вы можете найти это окно в Xcode => Ваш значок проекта рядом с кнопкой запуска => Изменить схему => Build Вкладка

+0

Похоже, он находит заголовки, после повторной установки 'реагировать родной @ 0.41.2' и удаление избыточных ** Header Пути поиска **. Он начал демонстрировать двойное определение интерфейса, что является хорошим знаком. –

+0

@PeterGerhat Помогает ли удаление справочника данных данных? Вы можете найти папку в настройках Xcode => вкладка Locations – binchik

+0

Возможно, Xcode сделал это уже. ** двойное определение интерфейса ** было результатом этого изменения https://github.com/facebook/react-native/issues/11725, и я просто выполнил шаги, чтобы исправить это. –

3

Update: решение на Facebook React-Native https://github.com/facebook/react-native/issues/11813

============

Эта проблема произошла со мной также. Кажется, что React.xcodeproj распознает только конфигурацию Отладка и Релиз. Вся выходная информация React.xcodeproj записывается в Debug-iphonesimulator или Release-iphonesimulator.

Это означает, что если у вас есть какие-то другие, чем «Debug/Release» конфигурации, выход все равно будет записан в Debug-iphonesimulator или релиз-iphonesimulator, то есть не то, что мы хотим.

Итак, решение состоит в том, чтобы добавить такую ​​же конфигурацию в React.xcodeproj, чтобы она соответствовала одному из ваших собственных проектов.

Например, если у вас есть 4 конфигурации в вашем собственном проекте, вы должны убедиться, что React.xcodeproj также имеет те же 4 конфигурации.

нажмите «+» кнопку «Конфигурации», затем «Дублировать конфигурацию выпуска» и переименуйте его в соответствии с вашими потребностями.

enter image description here

+0

Откуда взялось имя «Debug/iphonesimulator»? Как я узнаю, что это имя конфигурации, в которой я нуждаюсь? –

+0

Вы покажете скриншот того, как он должен выглядеть? –

+0

@PetrusTheron, правильное решение находится здесь: https://github.com/facebook/react-native/issues/11813, предоставленный philipshurpik прокомментировал 21 февраля – User9527

Смежные вопросы