-- The C compiler identification is GNU 12.1.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/aarch64-linux-gnu-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found LibArchive: /tmp/rpi-root/usr/lib/libarchive.so (found version "3.6.1")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/william/Downloads/cross-compile/build
[1/2] Building C object CMakeFiles/demo.dir/main.c.o
FAILED: CMakeFiles/demo.dir/main.c.o
/usr/bin/aarch64-linux-gnu-gcc -O3 -DNDEBUG -MD -MT CMakeFiles/demo.dir/main.c.o -MF CMakeFiles/demo.dir/main.c.o.d -o CMakeFiles/demo.dir/main.c.o -c /home/william/Downloads/cross-compile/main.c
/home/william/Downloads/cross-compile/main.c:2:10: fatal error: archive.h: No such file or directory
2 | #include <archive.h>
| ^~~~~~~~~~~
compilation terminated.
ninja: build stopped: subcommand failed.
TL;DR; use target_link_libraries(demo PRIVATE LibArchive::LibArchive)
Currently you’re linking using pure file paths, which do not carry any information about the include directories. While you could add target_link_libraries(demo PRIVATE ${LibArchive_INCLUDE_DIRS}) in modern CMake you should use imported targets that carry all the needed properties with them.
Thanks, the header files can be found now, however, it seems the ld program cannot find symbols now log
-- The C compiler identification is GNU 10.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/arm-linux-gnueabihf-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found LibArchive: /tmp/rpi-root/usr/lib/libarchive.so (found version "3.6.1")
-- Configuring done
-- Generating done
-- Build files have been written to: /home/william/Downloads/cross-compile/build
[2/2] Linking C executable demo
FAILED: demo
: && /usr/bin/arm-linux-gnueabihf-gcc -O3 -DNDEBUG CMakeFiles/demo.dir/main.c.o -o demo -Wl,-rpath,/tmp/rpi-root/usr/lib /tmp/rpi-root/usr/lib/libarchive.so && :
/usr/bin/arm-linux-gnueabihf-ld: warning: libcrypto.so.1.1, needed by /tmp/rpi-root/usr/lib/libarchive.so, not found (try using -rpath or -rpath-link)
/usr/bin/arm-linux-gnueabihf-ld: warning: libacl.so.1, needed by /tmp/rpi-root/usr/lib/libarchive.so, not found (try using -rpath or -rpath-link)
/usr/bin/arm-linux-gnueabihf-ld: warning: libexpat.so.1, needed by /tmp/rpi-root/usr/lib/libarchive.so, not found (try using -rpath or -rpath-link)
/usr/bin/arm-linux-gnueabihf-ld: warning: liblzma.so.5, needed by /tmp/rpi-root/usr/lib/libarchive.so, not found (try using -rpath or -rpath-link)
/usr/bin/arm-linux-gnueabihf-ld: warning: libzstd.so.1, needed by /tmp/rpi-root/usr/lib/libarchive.so, not found (try using -rpath or -rpath-link)
/usr/bin/arm-linux-gnueabihf-ld: warning: liblz4.so.1, needed by /tmp/rpi-root/usr/lib/libarchive.so, not found (try using -rpath or -rpath-link)
/usr/bin/arm-linux-gnueabihf-ld: warning: libbz2.so.1.0, needed by /tmp/rpi-root/usr/lib/libarchive.so, not found (try using -rpath or -rpath-link)
/usr/bin/arm-linux-gnueabihf-ld: warning: libz.so.1, needed by /tmp/rpi-root/usr/lib/libarchive.so, not found (try using -rpath or -rpath-link)
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_MD_CTX_free@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_resetStreamHC'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_compress_HC'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_compressStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_freeStreamHC'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_alone_decoder@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_sha512@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_createDStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_sha256@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_raw_decoder@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_MD_CTX_new@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_aes_192_ecb@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_properties_encode@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `inflate'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_isError'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_minCLevel'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `XML_ParserCreate'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_stream_decoder@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_initCStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_CCtx_setParameter'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `BZ2_bzlibVersion'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `crc32'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lstat64@GLIBC_2.33'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `HMAC_CTX_free@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_saveDictHC'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_stream_encoder_mt@XZ_5.2'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_saveDict'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_get_permset@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_properties_size@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_freeStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_versionNumber'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `BZ2_bzDecompressInit'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `deflateReset'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_raw_encoder@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `BZ2_bzDecompressEnd'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `deflate'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `XML_SetCharacterDataHandler'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_get_fd@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_stream_encoder@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_set_tag_type@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `XML_ParserFree'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `HMAC_Init_ex@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `XML_SetUserData'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `BZ2_bzCompressInit'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_clear_perms@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `deflateInit2_'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_ripemd160@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_DStreamOutSize'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_freeCStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `XML_Parse'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_EncryptUpdate@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_sha384@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `BZ2_bzCompressEnd'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `fstatat64@GLIBC_2.33'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `deflateInit_'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_compress_HC_continue'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_decompress_safe_usingDict'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_crc32@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_getErrorName'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_add_perm@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `inflateEnd'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_set_file@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `HMAC_CTX_new@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_initDStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `BZ2_bzCompress'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_loadDict'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `inflateSetDictionary'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_get_entry@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_get_perm@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_end@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_free@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_set_qualifier@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_code@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_memusage@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_CStreamOutSize'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_compress_fast_continue'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `deflateEnd'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_cputhreads@XZ_5.2'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_decompress_safe'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_CIPHER_CTX_free@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `BZ2_bzDecompress'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `fstat64@GLIBC_2.33'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_aes_128_ecb@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_init@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `inflateInit_'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_set_fd@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_decompressStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_properties_decode@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_sha1@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_lzma_preset@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_get_file@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `XML_SetElementHandler'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `inflateInit2_'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_createStreamHC'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_DigestInit@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_DigestUpdate@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `lzma_alone_encoder@XZ_5.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_endStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `inflateReset'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_md5@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `HMAC_Final@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `stat64@GLIBC_2.33'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_createStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_loadDictHC'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `PKCS5_PBKDF2_HMAC_SHA1@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_EncryptInit_ex@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `HMAC_Update@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_aes_256_ecb@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_get_tag_type@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_get_qualifier@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_createCStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `LZ4_compress_default'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_freeDStream'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `acl_create_entry@ACL_1.0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_CIPHER_CTX_new@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `mknod@GLIBC_2.33'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `EVP_DigestFinal@OPENSSL_1_1_0'
/usr/bin/arm-linux-gnueabihf-ld: /tmp/rpi-root/usr/lib/libarchive.so: undefined reference to `ZSTD_maxCLevel'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.