VC2013 неверный MSPDB120.DLL

Во время ссылки я получаю это сообщение:

LINK : fatal error LNK1101: incorrect MSPDB120.DLL version; recheck installation of this product

Я видел решения для подобных ошибок в предыдущих версиях VC2013, но они не работали для меня. К ним относятся:

  1. Бег C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat
  2. добавление переменной среды%VS120COMNTOOLS% к переменной среды PATH
  3. Переустановите или отремонтируйте установку MSVC2013 (НЕ РЕКОМЕНДУЕТСЯ)

В первый раз, когда я получил эту ошибку, я продолжил полную переустановку VC2013. Я выбрал этот маршрут, потому что подумал, что, возможно, я испортил установку, установив более старые версии VC после установки VC2013. Хотя переустановка сработала в первый раз, я не могу рекомендовать делать это. Установщик MS, кажется, немного сломан и одержим меня повторными попытками, что привело к потере 5+ часов моей жизни.

Каковы другие решения этой проблемы, если первые 2 варианта не работают?

3 ответа

Решение

Откройте диспетчер задач.

Проверьте текущие процессы mspdbsrv.exe и убейте его, если он работает, и попробуйте снова. Я не знаю, почему это работает, но я должен делать это время от времени. Процесс возвращается каждый раз, когда вы компилируете, и кажется случайным, застревает он или нет на этом шаге.

В качестве альтернативы, если вам не требуется генерировать отладочную информацию, вы можете вообще пропустить этот процесс, установив:

  • Свойства проекта -> Компоновщик -> Отладка -> Создать отладочную информацию ->No

Я только что это случилось. В моем случае у меня была статически связанная совместно используемая "вспомогательная" библиотека, которая была скомпилирована с CRT-флагами cl.exe "-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE", тогда как у моего целевого приложения, которое было связано с этой вспомогательной библиотекой, их не было. Когда я добавил эти флаги в флаги cl.exe приложения, все стало хорошо.

Я получаю это сообщение об ошибке, когда другой фон (jenkins) все еще работает в фоновом режиме. Ожидание его завершения и повторная попытка исправить ошибку.

Другие вопросы по тегам