Сегодня я запустил Visual Studio 2010 (Visual C ++) и начал работать над проектом. Решение содержит два проекта. Одна из них - статическая библиотека, которую я пишу, другая - тестовое приложение, содержащее модульные тесты для библиотеки.
Не изменяя ничего со вчерашнего дня, исполняемый файл больше не связывается:
LINK : fatal error LNK1104: cannot open file 'mylib.lib'
Статическая библиотека прекрасно компилируется и связывается. Я не менял настройки проекта примерно неделю, и вчера он просто отлично связывался.
Если я зайду в настройки исполняемого проекта и добавлю каталог библиотеки для $ (SolutionDir) \ debug
, Вместо этого я получаю следующую ссылку:
LINK : fatal error LNK1104: cannot open file 'kernel32.lib'
Я не уверен, в чем проблема. Я пытался очистить, восстановить и даже перезагрузить мою машину. Google обнаружил некоторые ошибки в древних версиях Visual C ++ (но я использую 2010), а также возможность того, что программа уже запущена. Однако он не работает, и перезагрузка подтверждает это.
Что может заставить компоновщик не находить базовые библиотеки, такие как kernel32.lib, или, в этом отношении, выходной каталог для моего решения?
Это старый C ++, кроссплатформенная библиотека, а не управляемые вещи, добавленные Microsoft.