Можно ли отключить исключения и RTTI в библиотеках Boost?

Я разрабатываю некоторые собственные библиотеки для Android и использую библиотеки Boost -, основанные только на заголовках -. Проблема, с которой я столкнулся, заключается в том, что когда я пытаюсь связать некоторые из моих собственных библиотек с какой-либо системной библиотекой, выдается UnsatisfiedLinkError. Это связано с разными средами выполнения C++, как указано в документации NDK :

You can only select a single C++ runtime that all your code will depend on. It is not possible to mix shared libraries compiled against different C++ runtimes.

. Системные библиотеки не используют RTTI и Exceptions, но мои библиотеки используют их неявно. Я знаю, что есть макросы BOOST_EXCEPTION_DISABLEи BOOST_NO_RTTI, но я не могу заставить их работать. Я пытался установить их как флаги компилятора, а также в config.hpp, но безуспешно — по-прежнему получаю много ошибок, например

cannot use typeid with -fno-rtti

Как я могу отключить эти функции в Boost, возможно ли это вообще?

8
задан vitakot 30 June 2012 в 20:45
поделиться