Сбой компиляции libffi с VS2012 с фатальной ошибкой LNK1281: Невозможно сгенерировать образ SAFESEH

Компиляция 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 , но я не уверен в подтексте.

Пожалуйста, сообщите, что может пойти не так.

10

Решение

Основным следствием отсутствия SAFESEH является то, что ваше приложение не будет принято для магазина Windows 8 или для Windows 8 настольная сертификация. Если это не проблема для вас, не стесняйтесь использовать /SAFESEH:NO,

документация говорит:

Наиболее распространенная причина того, что компоновщик не может создавать изображение, заключается в том, что один или несколько входных файлов (модулей) для компоновщика не были совместимы с функцией безопасных обработчиков исключений. Распространенная причина того, что модуль не совместим с безопасными обработчиками исключений, заключается в том, что он был создан с помощью компилятора из предыдущей версии Visual C ++.

Возможно ли, что обновление проекта до VS2012 изменило настройку на /SAFESEH:YES, Возможно, вы никогда не строили с SAFESEH,

20

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

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

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