Installed iceberg-config.cmake calls find_dependency(Avro) instead of avro-cpp
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 2/5
- Tempo stimato
- 1-3 ore
- Idoneità per principianti
- 88/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- cmake, cpp
- Ambito
- build-system
Direzione di ricerca
Inizia in cmake_modules/IcebergThirdpartyToolchain.cmake, in resolve_avro_dependency(), quindi esamina iceberg_find_dependencies() nella configurazione installata. Riproduci il problema con una dipendenza avro-cpp di sistema e un consumer che chiami find_package(iceberg CONFIG REQUIRED). Il lavoro è completato quando la configurazione installata richiede avro-cpp e viene configurata correttamente con il pacchetto di sistema.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
When iceberg-cpp is built against a system Avro (avro-cpp found through FIND_PACKAGE_ARGS), the installed
iceberg-config.cmake can't be consumed: find_package(iceberg CONFIG) fails at find_dependency(Avro).
Cause
In resolve_avro_dependency() (cmake_modules/IcebergThirdpartyToolchain.cmake), the non-vendored branch does:
else()
set(AVRO_VENDORED FALSE)
list(APPEND ICEBERG_SYSTEM_DEPENDENCIES Avro)
endif()
However, the package that was actually found is avro-cpp. It is declared with fetchcontent_declare(avro-cpp ...
FIND_PACKAGE_ARGS ...), and its config exports the avro-cpp::avrocpp_* targets. Avro 1.12 installs
avro-cpp-config.cmake and no Avro package. So iceberg_find_dependencies() in the installed config calls
find_dependency(Avro), which can't be satisfied.
Reproduction
Seen with v0.4.0 (the code is unchanged on main) using vcpkg's avro-cpp 1.12.2 on x64-windows:
- Build and install iceberg-cpp with the bundle enabled against the system
avro-cpp. - In a consumer project, call
find_package(iceberg CONFIG REQUIRED). - Configuring fails because the
Avropackage can't be found.
Suggested fix
Record the real package name:
list(APPEND ICEBERG_SYSTEM_DEPENDENCIES avro-cpp)
The same one-line change is carried as a patch in the proposed vcpkg port; I'm happy to open a PR here as well.
- Lingua principale
- C++
- Stelle
- 223
- Fork
- 127
- Merge medio
- 1g 13h
- PR unite (30g)
- 28
Preparare l'ambiente
Non abbiamo ancora controllato i file di configurazione di questo progetto. Parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/iceberg-cpp
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
apache/iceberg-cpp#959 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
apache/iceberg-cpp#955 · 3 commenti · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
apache/iceberg-cpp#946 · 5 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
apache/iceberg-cpp#944 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 72/100
apache/iceberg-cpp#943 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di apache/iceberg-cpp
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
cp-algorithms/cp-algorithms#1715 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
Icinga/icinga2#11058 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
status:needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
PX4/PX4-Autopilot#28924 ·
I maintainer di solito rispondono entro 1 giorno
-
component: split-view platform: windows
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
zen-browser/desktop#15616 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno