До VS2008 вы устанавливаете свои зависимые от проекта родные С++ в файле решения (Project Dependencies ...
), и если (по умолчанию) параметр компоновщика
Properties -> Linker -> General : Link Library Dependencies = Yes
Visual Studio Build будет автоматически связываться в файлах .lib
всех проектов (DLL, LIB), в которых этот проект зависит, будет "статически" связан.
Сторона Примечание. Корпорация Майкрософт изменила работу зависимостей в VS2010, и теперь вы должны добавить зависимость напрямую к проекту
Common Properties -> Framework and References : (List of depenencies)
(each lib/dll has a separate option:
Project Reference Properties -> Link Library Dependencies : True|False
Я в порядке. Это не, о чем идет речь.
(Одно объяснение здесь: Гибкие ссылки на проект-проект.)
Однако все же возможно определить зависимости проекта от уровня решения, а параметр General
Linker также по-прежнему существует. Однако это не сработает. См:
- Зависимости библиотеки ссылок не работают?
- Разработал ли Visual Studio 2010 "Зависимости проектов" между проектами на С++?
- Visual Studio 2010 не автолизует статические библиотеки из проектов, которые зависят от того, как это должно быть предусмотрено
и особенно см. здесь (acutal question следует)
Если Microsoft подтверждает, что Linker Option не делает то, что ожидает от него население всего мира, и добавляет следующее объяснение:
Спасибо за сообщение об этой обратной связи. Проблема, с которой вы столкнулись, - это по дизайну. "Зависимость библиотеки ссылок" - это флаг, который только диктует передавать или не передавать библиотеку в качестве входа в компоновщик. Оно делает не найти зависимость автоматически. В качестве клиента вам придется определите управляемость вручную, как вы предлагаете.
Может ли объяснить, что это означает, или более того: что делает в Visual Studio 2010 опция компоновщика "Link Library Dependency"?
Что такое "вход в компоновщик", который на самом деле не связан?