Компиляция libffi с VS11 дает следующую ошибку компоновщика
libffi\libffi-3.0.9\ms\Win32\Debug\ffi.dll : fatal error LNK1281: Unable to generate SAFESEH image.
Тот же проект прекрасно компилировался с VS10, но после автоматического обновления с VS2012 он начал выдавать ошибку компоновщика
Объяснение в MSDN слишком загадочно и наименее полезно
Я мог бы восстановить с /SAFESEH:NO
, но я не уверен в подтексте.
Пожалуйста, сообщите, что может пойти не так.
Основным следствием отсутствия SAFESEH
является то, что ваше приложение не будет принято для магазина Windows 8 или для Windows 8 настольная сертификация. Если это не проблема для вас, не стесняйтесь использовать /SAFESEH:NO
,
документация говорит:
Наиболее распространенная причина того, что компоновщик не может создавать изображение, заключается в том, что один или несколько входных файлов (модулей) для компоновщика не были совместимы с функцией безопасных обработчиков исключений. Распространенная причина того, что модуль не совместим с безопасными обработчиками исключений, заключается в том, что он был создан с помощью компилятора из предыдущей версии Visual C ++.
Возможно ли, что обновление проекта до VS2012 изменило настройку на /SAFESEH:YES
, Возможно, вы никогда не строили с SAFESEH
,
Других решений пока нет …