CMAKE/MAKEFILE :/usr/bin/x86_64-linux-gnu-ld : Cannot find -lfftw3f

标签 c ubuntu gcc makefile cmake

我在服务器上使用 cmake 和 makefile 运行一些 c 代码,并且我正在使用一个库,但是当我运行 make 时,我得到了这个错误:/usr/bin/x86_64-linux-gnu-ld: cannot find -lfftw3f该库已经安装并位于/usr/lib/x86_64-linux-gnu/,有什么建议吗?这是我的 CMAKE 文件

cmake_minimum_required(VERSION 3.5)
project(sfa C)

set(CMAKE_C_STANDARD 11)

set(LIBSFA src/pqueue.c src/sfa_file_loaders.c  src/sfa_trie.c src/sfa_node.c   src/ts.c src/calc_utils.c src/sfa_query_engine.c  src/sfa_file_buffer.c src/sfa_file_buffer_manager.c src/dft.c)
add_library(libsfa STATIC "${LIBSFA}")

add_executable(sfa src/sfa.c )
link_directories(/usr/lib/x86_64-linux-gnu/)
target_link_libraries(sfa libsfa m fftw3f jemalloc readline)
谢谢

最佳答案

通常,提供以前开发的程序使用它的库与您实际需要包含一些要使用的库的文件之间存在差异。
CMake 检查 发展通过查询 #include <blahblah.h> 安装库的版本。属于它的文件。如果它没有找到它们,那么它会提示。
问题很可能是这样的:您已经在系统上安装了库,但没有安装开发版本,以及使用它进行开发所需的所有包含文件。可能您需要安装一些 libfftw3-dev包或类似名称来安装包含文件,因此可以使用该库进行开发。

关于CMAKE/MAKEFILE :/usr/bin/x86_64-linux-gnu-ld : Cannot find -lfftw3f,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65535688/

相关文章:

c - 我的 C 应用程序中出现段错误

c++ - 对 `_imp__apr_getopt_init@16' 的 undefined reference

linux - Docker - 在多层应用程序中移动到新主机时需要传输哪些图像?

c++ - 尽管使用指令,gcc 11.3.0 仍找不到运算符

r - 无法在 Mac OSX Maverick 中从源安装 R 包

c++ - vs2017 输出错误但 mingw 有效

c - 错误函数 erf(x),在 visual studio 2005 的 math.h 中找不到

c - 尝试打印一个简单的字符串: [Warning] conflicting types for 'rawrprint' [enabled by default]

ubuntu - 安全地授予用户 sudo 访问权限

php - 使用 PHPMailer 调用 $mail->anyparameter 时超时