Rebuild удаляет мой .lib

Я пытаюсь объединить 2 проекта в визуальной студии и получаю ошибку LNK1181. Я искал в Google и пробовал все, что находил, но просто не могу решить проблему.

Я получаю следующие результаты:
Выполнение сборки завершается успешно. Выполнение Rebuild завершается с ошибкой LNK1181: невозможно открыть входной файл "a.dll"

При сборке экран вывода показывает, что dll создана и находится в папке.
При выполнении перестройки экран вывода показывает, что dll создана, но ее нет в папке. И тогда ребилд приводит к фейлу + ошибка LNK1181.

Так что же не так? Чем отличается ребилд?

Я даже вижу в папке, что dll создается, а затем снова удаляется.

* У меня есть 1 проект, который является основным проектом и создает .exe, и он зависит от другого проекта для запуска.

Решение:

Я обнаружил проблему, и она не имеет ничего общего с сообщением об ошибке LNK, которое я получаю.

По-видимому, чистая -> сборка сильно отличается от простого перестроения. В основном потому, что у меня несколько проектов. При выполнении очистки -> сборка сначала очищает все файлы, а затем собирает все проекты.

Но выполнение проекта перестройки A очищается и строится, затем проект B очищается и строится и т. д.

Таким образом, сгенерированный библиотекой bij A удаляется. Решение для этого или просто сделайте чистую -> сборку. Или выполните мою собственную очистку, удалив файлы самостоятельно, а затем выполните восстановление.

Кроме того, мне не хочется тратить много времени на эту проблему, когда это всего лишь «проблема/ошибка» MSbuild, и достаточно сделать чистую сборку.


person Vinka    schedule 20.06.2014    source источник


Ответы (1)


ошибка компоновщика может быть связана с отсутствием какой-либо библиотеки. сначала проверьте, есть ли у вас библиотека для .dll, затем добавьте правильный путь для библиотеки в Visual Studio.

person 4simplicity    schedule 20.06.2014
comment
Но почему нормальная сборка работает? И библиотека создается визуальной студией, а затем снова удаляется, что приводит к сбою. - person Vinka; 20.06.2014