Cmake似乎找不到lib libsndfile。但是,它安装在我的机器上。
find_library(sndfile REQUIRED)并安装:
yum list installed | grep libsnd
libsndfile.x86_64 1.0.25-11.el7 @base
libsndfile-devel.x86_64 1.0.25-11.el7 @base 错误:
CMake Error at CMakeLists.txt:65 (find_library):
Could not find sndfile using the following names:CMakeLists.txt:
cmake_minimum_required(VERSION 3.19)
project(untitled1)
set(CMAKE_CXX_STANDARD 11)
find_library(sndfile REQUIRED)
add_executable(untitled1 main.cpp)Main.cpp
#include <iostream>
int main() {
std::cout << "Hello, World!" << std::endl;
return 0;
}发布于 2021-04-30 15:45:23
它是否安装在您的计算机上并不意味着什么。CMake不会在你所有的电脑上搜索图书馆。最好的方法是将已安装库的位置添加到PATH环境变量中。
下面是CMake文档对find_library()、HINTS和PATHS参数的说明:
提示、路径 除了默认位置之外,还指定要搜索的目录。ENV子选项从系统环境变量中读取路径。
CMake还提供了另一种解决方案:设置CMAKE_PREFIX_PATH,您可以找到更多关于它的详细信息,这里。
https://stackoverflow.com/questions/67336499
复制相似问题