我正在尝试在macOS上安装libarchive用于我的学校项目。我试着用brew公式来做,但CMake说它检测不到。如何正确安装libarchive?我尝试的是:brew install libarchive我在CLion得到的:
brew install libarchive
Could NOT find LibArchive (missing: LibArchive_INCLUDE_DIR)
relj7zay1#
正如GitHub issue post中提到的,libarchive没有安装到标准系统路径中。因此,您需要通过在CMake文件中设置以下内容来告诉CMake在哪里可以找到它:
libarchive
set(LibArchive_INCLUDE_DIR "/usr/local/opt/libarchive/include")
注意,您可能必须修改此处的路径,以匹配系统上libarchive的安装位置
rggaifut2#
这适用于Linux、macOS和Apple芯片上的macOS。
if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") # Homebrew ships libarchive keg only, include dirs have to be set manually execute_process( COMMAND brew --prefix libarchive OUTPUT_VARIABLE LIBARCHIVE_PREFIX OUTPUT_STRIP_TRAILING_WHITESPACE COMMAND_ERROR_IS_FATAL ANY ) set(LibArchive_INCLUDE_DIR "${LIBARCHIVE_PREFIX}/include") endif() find_package(LibArchive REQUIRED) target_link_libraries(${PROJECT_NAME} PRIVATE LibArchive::LibArchive)
2条答案
按热度按时间relj7zay1#
正如GitHub issue post中提到的,
libarchive
没有安装到标准系统路径中。因此,您需要通过在CMake文件中设置以下内容来告诉CMake在哪里可以找到它:注意,您可能必须修改此处的路径,以匹配系统上
libarchive
的安装位置rggaifut2#
这适用于Linux、macOS和Apple芯片上的macOS。