c - 为什么 gcc 提示已经存在的库找不到?

标签 c linux linker centos shared-libraries

消息如下:

$:~/software/version_1.02/example$ gcc -Wall -Wextra example.c -I../include -L../lib -lnnmf -larpack -llapack \
-lblas -o main
In file included from example.c:47:
../include/nmfdriver.h:92:7: warning: no newline at end of file
example.c:53: warning: unused parameter ‘argc’
example.c:53: warning: unused parameter ‘argv’
/usr/bin/ld: cannot find -larpack
collect2: ld returned 1 exit status
$:~/software/version_1.02/example$ ls /usr/lib/*arpack*
/usr/lib/libarpack.so.2  /usr/lib/libarpack.so.2.0.0

arpackyum(包管理器)安装。我想知道为什么找不到它。 有没有人知道如何解决这个问题?

最佳答案

它可能正在寻找没有版本后缀的库。
尝试建立一个没有版本后缀的链接到其中一个版本化的链接:

sudo ln -s /usr/lib/arpack.so.2 /usr/lib/arpack.so

关于c - 为什么 gcc 提示已经存在的库找不到?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13927467/

相关文章:

c++ - 如何使用 g++ 在另一个文件中定义的函数?

c - 为什么这个程序不能与 C 语言中的操作系统重定向命令一起使用?

c - -masm 中的第一个 m 是什么意思?

c - 使用 C 中的极坐标方法向帧添加噪声

linux - 为 Linux 创建 DirectX 供应商驱动程序的难度如何?

c - 查找哪些页面不再与写时复制共享

linux - 无法在 MonoDevelop 中查看视觉设计器

c - 错误(段错误核心转储)-列表和结构指针

c++ - 对 C++ 类构造函数的 undefined reference

c++ - Linux gcc 4.3.4 上的链接错误 : "undefined reference" related to "jpeg" library (e. g.,未定义对 `jpeg_std_error(jpeg_error_mgr*)' 的引用)