C 找不到共享库

C 找不到共享库,c,shared-libraries,gmp,C,Shared Libraries,Gmp,我有一个非常简单的C语言GMP程序(如下) 怎么了?看起来/usr/local/lib不在/etc/ld.so.conf或/etc/ld.so.conf.d/*中 如果它只是以root用户身份运行sudo ldconfig(或ldconfig),然后重试 如果不是,请添加它或手动替代命令的库路径: LD_LIBRARY_PATH=/usr/local/lib ./myprogram 您的配置似乎很奇怪,请检查/usr/local/lib/libgmp.so.10是否是指向/usr/local/

我有一个非常简单的C语言GMP程序(如下)


怎么了?

看起来
/usr/local/lib
不在
/etc/ld.so.conf
/etc/ld.so.conf.d/*

如果它只是以root用户身份运行
sudo ldconfig
(或
ldconfig
),然后重试

如果不是,请添加它或手动替代命令的库路径:

LD_LIBRARY_PATH=/usr/local/lib ./myprogram
您的配置似乎很奇怪,请检查
/usr/local/lib/libgmp.so.10
是否是指向
/usr/local/lib/libgmp.so.10.0.2
的链接,例如

$ ls -ltr /usr/lib/libgmp.so.3
lrwxrwxrwx 1 root root 15 2011-07-27 12:15 /usr/lib/libgmp.so.3 -> libgmp.so.3.5.2

定位libgmp.so.10
产生以下内容:
/usr/local/lib/libgmp.so.10/usr/local/lib/libgmp.so.10.0.2
LD_LIBRARY_PATH=/usr/local/lib ./myprogram
$ ls -ltr /usr/lib/libgmp.so.3
lrwxrwxrwx 1 root root 15 2011-07-27 12:15 /usr/lib/libgmp.so.3 -> libgmp.so.3.5.2