Как я могу автоматически ссылаться на библиотеки отладки / выпуска в VC++ 6.0?

Я пытаюсь сохранить программу, написанную 5 лет назад на VC++ 6.0. Он использует наши "общие" библиотеки. Проблема, с которой я столкнулся, заключается в том, что она либо связывается с отладочной версией этих библиотек, либо с версией выпуска, в зависимости от того, установлен ли в [каталогах] для [библиотечные файлы] значение "common/ debug" или "common/ release" в [ Инструменты]->[Options].

Как мне получить ссылку на [common\debug\common.lib] при сборке отладочной версии и [common\release\common.lib] при сборке релизной версии? Если у меня есть оба пути в каталогах библиотеки, кажется, что это ссылка на первый найденный путь.

5 ответов

Вместо того, чтобы указывать пути в папках включения и все лучшее, что я могу использовать для включения библиотек в зависимости от конфигурации, это использование #pragma

попробуйте это один раз, это очень полезно

ifdef _DEBUG

комментарий к прагме (lib, "..\DllTest\Debug\DllTest.lib")

еще

комментарий к прагме (lib, "..\DllTest\Release\DllTest.lib")

ENDIF

В [Свойства проекта]->[Компоновщик]->[Вход]->[Дополнительные зависимости] вы можете использовать заполнитель $(ConfigurationName), например:

c:\common\$(ConfigurationName)\common.lib

В конфигурации отладки это изменится на:

c:\common\Debug\common.lib

и в Release это изменится на:

c:\common\Release\common.lib

Если у меня есть оба пути в каталогах библиотеки, кажется, что это ссылка на первый найденный путь.

Просто добавьте папку отладки для настроек отладки и папку выпуска для настроек выпуска.

Почти все параметры компилятора, ссылок и т. Д. Указаны для каждой конфигурации (свойства проекта будут показывать пустые параметры во всех конфигурациях (если я правильно помню текст), если отладка и выпуск отличаются.

Решение, которое я нашел, немного похоже на Ричарда и "1800 Информация"...

Я удалил путь к общей библиотеке из Tools->Options, Приведенные здесь пути являются общими для всех конфигураций всех проектов, работающих в MSVS VC++ 6.0.

Затем я добавил полный путь к соответствующей библиотеке в Project->Settings для каждой конфигурации. Hense отладочная конфигурация D:\VSS\Common\Debug\Common.lib и конфигурация выпуска имеет D:\VSS\Common\Release\Common.lib, Кажется, это работает, и впервые у меня нет предупреждений о сборке!

Спасибо всем предложениям для того, чтобы указать мне, что, кажется, правильное направление.

--- Алистер.

Вы можете указать полный путь к библиотеке для ссылки в поле Дополнительные зависимости, это может иметь разные значения для отладочной и выпускной сборок.

Другие вопросы по тегам