ho appena aggiornare il mio CMake
dalla versione 2.8
a 3.2
protocollo non supportato mentre pacchetto di download tar.gz
Il suo fascino lavorare in CMake 2.8
ma, dopo l'aggiornamento la sua fallire.
Sto cercando di creare una libreria di terze parti utilizzando la funzione CMake ExternalProject_Add()
.
ExternalProject_Add(
luacov
URL https://github.com/keplerproject/luacov/archive/v0.7.tar.gz
DOWNLOAD_DIR ${EXTERNAL_PROJECT_DOWNLOAD_DIR}
CMAKE_ARGS -DCMAKE_TOOLCHAIN_FILE=${MY_TOOLCHAIN_FILE}
SOURCE_DIR ${EXTERNAL_PROJECT_SRC_DIR}/luacov
BINARY_DIR ${EXTERNAL_PROJECT_BUILD_DIR}/luacov
UPDATE_COMMAND ""
PATCH_COMMAND ""
)
mia osservazione:
- Utilizzando
GIT_REPOSITORY
opzione,ExternalProject_Add()
permettonohttp
ehttps
protocollo per scaricare progetto esterno. - L'utilizzo dell'opzione
URL
,ExternalProject_Add()
consente solo il protocollohttp
, ma non ilhttps
per scaricare il progetto esterno.
PROBLEMA:
Esiste un modo per scaricare e costruire progetto esterno utilizzando https
protocollo?
ERRORE:
[ 16%] Performing download step (download, verify and extract) for 'luacov'
-- downloading...
src='https://github.com/keplerproject/luacov/archive/v0.7.tar.gz'
dst='/home/build/my_build/external_projects/downloads/v0.7.tar.gz'
timeout='none'
CMake Error at /home/build/my_build/luacov-prefix/src/luacov-stamp/download-luacov.cmake:21 (message):
error: downloading
'https://github.com/keplerproject/luacov/archive/v0.7.tar.gz' failed
status_code: 1
status_string: "Unsupported protocol"
log: Protocol "https" not supported or disabled in libcurl
Closing connection -1
make[3]: *** [luacov-prefix/src/luacov-stamp/luacov-download] Error 1
make[2]: *** [CMakeFiles/luacov.dir/all] Error 2
make[1]: *** [CMakeFiles/luacov.dir/rule] Error 2
make: *** [luacov] Error 2
Come estrai l'archivio quando usi 'DOWNLOAD_COMMAND'? Una volta scaricato tramite URL, questo viene fatto automaticamente, ma questo sembra non essere il caso quando lo fai in questo modo. – heine