Я работаю над проектом на основе QT6, в котором я хотел бы использовать Quazip-Library. Для этого я знаю, что мне сначала нужно получить Zlib, поэтому я использовал fetchcontent_declare, чтобы получить оба в мою систему сборки Cmake: < /p>
cmake_minimum_required(VERSION 3.16)
# QT6 suchen
find_package(Qt6 REQUIRED COMPONENTS Widgets)
# Erzeuge Einstellungen für qt-projekt
qt_standard_project_setup()
# Festlegen der Output-Directories
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/lib)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/bin)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/bin)
# Abrufen von notwendigen Abhängigkeiten
include(FetchContent)
FetchContent_Declare(
zlib
PREFIX ${PROJECT_SOURCE_DIR}/vendor/zlib
GIT_REPOSITORY https://github.com/madler/zlib
GIT_TAG 09155eaa2f9270dc4ed1fa13e2b4b2613e6e4851 # Master, Release Version 1.3
FIND_PACKAGE_ARGS NAMES ZLIB
)
FetchContent_MakeAvailable(zlib)
FetchContent_Declare(
quazip
PREFIX ${PROJECT_SOURCE_DIR}/vendor/quazip
GIT_REPOSITORY https://github.com/stachenov/quazip
GIT_TAG 566fa496649b8cb09018b497575bb3bf2977965f # Master, Release Version 1.4
# DEPENDS zlib
FIND_PACKAGE_ARGS NAMES QuaZip
)
FetchContent_MakeAvailable(quazip)
# Subdirectories / Projekte hinzufügen
add_subdirectory(ETEvalT)
< /code>
Однако Quazip не может ссылаться на Zlib, Visual Studio дает следующее сообщение об ошибке: < /p>
Fehler CMake Error at out/build/x64-Debug/_deps/quazip-src/quazip/CMakeLists.txt:69 (target_link_libraries):
Target "QuaZip" links to:
ZLIB::ZLIB
but the target was not found. Possible reasons include:
* There is a typo in the target name.
* A find_package call is missing for an IMPORTED target.
* An ALIAS target is missing. QuaZip_Library D:\ExerciseTrackerEvaluationTool\out/build/x64-Debug/_deps/quazip-src/quazip/CMakeLists.txt
Какова проблема и как я могу решить это элегантно?
Я работаю над проектом на основе QT6, в котором я хотел бы использовать Quazip-Library. Для этого я знаю, что мне сначала нужно получить Zlib, поэтому я использовал fetchcontent_declare, чтобы получить оба в мою систему сборки Cmake: < /p> [code]cmake_minimum_required(VERSION 3.16)
# Subdirectories / Projekte hinzufügen add_subdirectory(ETEvalT) < /code> Однако Quazip не может ссылаться на Zlib, Visual Studio дает следующее сообщение об ошибке: < /p> Fehler CMake Error at out/build/x64-Debug/_deps/quazip-src/quazip/CMakeLists.txt:69 (target_link_libraries): Target "QuaZip" links to:
ZLIB::ZLIB
but the target was not found. Possible reasons include:
* There is a typo in the target name. * A find_package call is missing for an IMPORTED target. * An ALIAS target is missing. QuaZip_Library D:\ExerciseTrackerEvaluationTool\out/build/x64-Debug/_deps/quazip-src/quazip/CMakeLists.txt
[/code] Какова проблема и как я могу решить это элегантно?