У меня есть проект, написанный в Visual Studio 2008, который генерирует следующую командную строку компоновщика:
/OUT:"../Debug IH East\CommonDlgs.dll"
/INCREMENTAL:NO
/NOLOGO
/LIBPATH:"../Debug IH East/Lib"
/DLL
/MANIFEST
/MANIFESTFILE:"Debug IH East\CommonDlgs.dll.intermediate.manifest"
/MANIFESTUAC:"level='asInvoker' uiAccess='false'"
/DEBUG
/PDB:"c:\Users\rdrichardson\OneDrive - Rad-Con\CAPS Builds\trunk\Debug IH East\/CommonDlgs.pdb"
/SUBSYSTEM:WINDOWS
/DYNAMICBASE:NO
/IMPLIB:"c:\Users\rdrichardson\OneDrive - Rad-Con\CAPS Builds\trunk\Debug IH East\/Lib/CommonDlgs.lib"
/MACHINE:X86
/ERRORREPORT:PROMPT
CapsLib.lib CJ60Lib.lib "..\debug ih east\lib\capsdata.lib"
Я только перечислил CapsLib.lib и CJ60Lib.lib как зависимости. CapsData.lib не указан нигде в конфигурации проекта, которую я могу найти. Наличие этого в этом проекте создает круговую зависимость, потому что CapsData зависит от проекта CommonDlgs. Я перечислил $ (OutDir) / Lib в качестве дополнительного каталога библиотеки, а $ (OutDir) разрешается в .. \ debug ih east \ lib. Откуда взялся CapsData и как мне от него избавиться?