Статическая библиотека зависимостей + VS2010 + SVN
Это сомнение в организации решения в Visual Studio с использованием SVN.
Для упрощения предположим, что у меня есть статическая библиотека Util.lib, скомпилированная в проекте VS2010.
У меня также есть статическая библиотека Capture.lib, скомпилированная в VS2010, которая зависит от Util.lib. В SVN Util.lib является внешним в папке Capture.lib, а проект Util был добавлен в решение Capture.lib. Это прекрасно компилируется.
Теперь проблема. У меня есть другой проект под названием Native, который компилирует DLL. Эта DLL зависит от Capture.lib И Util.lib. Я добавил как внешние, так и добавил проекты в решение Native.
Проблема в том, что во время компиляции Native проект Capture.lib не может быть скомпилирован, потому что он не находит Util.lib. Это происходит потому, что он ищет в папке externals проекта Capture! И Утиля сейчас нет.
Что мне делать в этом случае? Должен ли я добавить проект Util (внутри externals/Capture/externals/Util) в решение Native? Это правильный подход?
Спасибо
1 ответ
Это зависит от того, как часто меняются Util.lib и Capture.lib. 1) Если вы используете их фиксированные версии для Native.dll, вам просто нужно добавить Util.lib и Capture.lib и их заголовочные папки в ваш собственный проект (Project->Properties->C/C++->Additional Include Directories, Project->Properties->Linker->Input->Additional Dependencies) 2) В случае, если Capture.lib и Native.dll динамически изменяются параллельно с Native.dll, вы должны отрегулировать зависимости так же, как (1) и добавьте зависимости проекта в Capture.lib и Native.dll (Project->Project Dependencies), где вы можете указать VS компилировать ваши проекты в правильном порядке.