Фон
Я пытаюсь заменить компилятор статической библиотеки, в настоящее время встроенной в VS2015, компилятором Intel (Версия 17.0.1.143 Build 20161005). После исправления любых ошибок компиляции я начал получать ошибку времени ссылки error LNK1243: invalid or corrupt file: COMDAT section 0x2E6 associated with following section 0x0
. Точный раздел (показан 0x2E6
) зависит от того, включен ли я предварительно скомпилированные заголовки, но ошибка остается той же.
Что я исследовал:
Погугление ошибки приводит к множеству результатов (всего около 7, причем около 3 фактически относятся к ошибке компоновки). Одной из них была ошибка компоновки в LLVM , другая - сайт Microsoft, который ссылается на документацию VS2008 , которая ссылается на страницу, описывающую ошибка компоновки . Третья - это ссылка на исправления в Intel Parallel Studio XE 2016, которые должны были быть включены в версию, которую я использую.
Сайт Intel говорит, что исправляет
/ Qipo приводит к ошибке компоновщика: фатальная ошибка LNK1243: неверный или поврежденный файл: секция COMDAT 0x30FE, связанная со следующей секцией 0x0
и сайт Microsoft описывает ошибку как
Компоновщик обнаружил поврежденный файл .obj. Раздел должен быть связан с другим предшествующим ему разделом.
Я переключил вывод компилятора на диагностику, но ничего полезного там не увидел.
Вопрос
Что может вызвать эту ошибку (и как можно устранить причины)? Кроме того, что мне следует искать в файлах * .obj, чтобы лучше понять, что происходит?