MRB_THROW вызывает ошибку в libc ++ abi.dylib

Я пытаюсь построить модифицированную версию КСН-рубинового встроен проект с некоторыми дополнительными драгоценными камнями, включая mruby-маршал драгоценный камень из mruby-mgems список (который включает в себя файл .cpp). Я могу заставить его собирать и запускать, но если я поднимаю какое-либо исключение, приложение вылетает при вызове MRB_THROW from error.c со следующим сообщением:

libc++abi.dylib: terminating with uncaught exception of type int

Я подозреваю, что проблема в конфликте в том, как обработка исключений mRuby компилируется и связывается: согласно документации, она может использовать либо обработку setjmp / longjmp, либо исключения C ++, если включен код C ++; однако я не могу понять, какая комбинация параметров конфигурации мне нужна, чтобы заставить ее работать.

Чтобы его собрать, я внес в проект некоторые изменения:

1

Решение

Решение было добавить -fexceptions флаг в список флагов компилятора C. Я подготовил суть с Rakefile, который я использовал, чтобы исправить это, обратите внимание на conf.cc флаги.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]