【发布时间】:2021-07-23 22:49:13
【问题描述】:
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;
}
【问题讨论】:
-
@drescherjm 完成 :)
-
您添加了 CMakeLists.txt,但没有发布错误消息的下一行。 Could not find sndfile using the following names:
-
您忘记在
find_library调用中为您的库指定名称。 find_library 的第一个参数是 变量 名称,而不是 库 名称。 -
@Tsyvarev 我现在明白了错误消息。我希望它正在寻找一个名为
libREQUIRED的库 -
我还会确保 cmake 具有正确的
CMAKE_STATIC_LIBRARY_SUFFIX值,后缀.x86_64似乎不寻常,Linux 发行版通常具有.a扩展名
标签: c++ cmake centos libsndfile