Я использую проекты библиотеки c ++ (которые используют библиотеку boost 1.57) для своего приложения ios, и когда я создаю свое приложение, я получаю сотни предупреждений о компоновщике. Приложение работает совершенно нормально.
Важное предупреждение
ld: warning: direct access in boost::exception_ptr boost::exception_detail::get_static_exception_object<boost::exception_detail::bad_exception_>() to global weak symbol boost::exception_ptr boost::exception_detail::get_static_exception_object<boost::exception_detail::bad_exception_>()::ep means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
Как мне избавиться от этих предупреждений компоновщика? Любой возможный способ кроме подавления?
Спасибо
Я избавился от этих предупреждений компоновщика, изменив «Символы, скрытые по умолчанию» на «ДА», а «Встроенные методы скрыты» на «ДА» в настройках сборки xcode.
Библиотека повышения для iOS была собрана с -fvisibility = hidden -fvisibility-inlines-hidden flags, а в настройках сборки xcode для видимости символов было установлено значение YES. Отсюда возникли несоответствия и предупреждения компоновщика.