Подтвердить что ты не робот

Undefined символы для архитектуры x86_64: "std:: terminate()", на которые ссылается

Я получил ошибку, когда я запустил react-native run-ios после обновления RN до 0,26.0-rc.

Undefined symbols for architecture x86_64:
      "std::terminate()", referenced from:
      ___clang_call_terminate in libReact.a(RCTJSCExecutor.o)
  "___cxa_begin_catch", referenced from:
      ___clang_call_terminate in libReact.a(RCTJSCExecutor.o)
  "___gxx_personality_v0", referenced from:
      -[RCTJavaScriptContext initWithJSContext:onThread:] in libReact.a(RCTJSCExecutor.o)
      -[RCTJavaScriptContext init] in libReact.a(RCTJSCExecutor.o)
      -[RCTJavaScriptContext invalidate] in libReact.a(RCTJSCExecutor.o)
      _RCTNSErrorFromJSError in libReact.a(RCTJSCExecutor.o)
      +[RCTJSCExecutor runRunLoopThread] in libReact.a(RCTJSCExecutor.o)
      -[RCTJSCExecutor init] in libReact.a(RCTJSCExecutor.o)
      -[RCTJSCExecutor context] in libReact.a(RCTJSCExecutor.o)
      ...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Как я могу это исправить?

4b9b3361

Ответ 1

Решено с помощью следующих советов после запуска [email protected]:

[...] добавить -lc++ в Other Linker Flags в настройках сборки проекта xcode.

Как указано в комментариях, обновите параметры целевой сборки (а не проект). Вам также может потребоваться обновить тестовый объект.