Вот мой минимальный пример ниже: https://www.dropbox.com/s/7fwsr3sigb60rtw/leveling-test.zip?dl=0
Моя текущая структура папок проекта и соответствующее содержимое CMakeLists:
leveling
├── CMakeLists.txt: add_subdirectory(deps)
└── deps
├── CMakeLists.txt: add_subdirectory(xml-reading)
└── xml-reading
├── CMakeLists.txt: add_subdirectory(deps)
│ add_library(xml-reading ...)
│ target_include_directories(xml-reading PUBLIC ${CMAKE_CURRENT_LIST_DIR}/deps/tinyxml2)
│ target_link_libraries(xml-reading PUBLIC tinyxml2)
└── deps
├── CMakeLists.txt: add_subdirectory(tinyxml2)
└── tinyxml2
это генерирует файл xml-reading.dll.
Но тогда параметры компоновщика проекта уровня имеют /DYNAMICBASE "bin\windows-32\debug\xml-reading.lib" "bin\windows-32\debug\BOBPrimitives.lib" "bin\windows-32\debug\tinyxml2d.lib"
Что дает: 2>LINK : fatal error LNK1104: cannot open file 'bin\windows-32\debug\xml-reading.lib'
Что случилось?
- Я попытался добавитьСовместно с
add_library(xml-reading SHARED ...)
, не помогло - В качестве обходного пути я установил STATIC на
add_library(xml-reading STATIC ...)
, чтобы заставить его создавать файл .lib - , но я хотел бы понять, что происходит