Сегодня я запустил 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'
Я не уверен, в чем проблема. Я пробовал чистить, восстанавливать и даже перезагружать свою машину. Гугл обнаружил некоторые ошибки в древних версиях Visual C++ (но я использую 2010), а также возможность того, что программа уже запущена. Однако он не запускается, и перезагрузка это подтверждает.
Что может привести к тому, что компоновщик не найдет основные библиотеки, такие как kernel32.lib, или, если уж на то пошло, выходной каталог для моего решения?
Это старомодный C++, кроссплатформенная библиотека, а не та управляемая штука, которую добавила Microsoft.