所以当我试图编译一个代码时,我会得到这个错误。不知道链接需要去哪里。
/home/will/WRF/miniconda3/envs/ncl_stable/bin/../lib/gcc/x86_64-conda-linux-gnu/10.3.0/../../../../x86_64-conda-linux-gnu/bin/ld: /home/will/WRF/Libs/NETCDF/lib/libnetcdf.so: undefined reference to `pow@GLIBC_2.29'
collect2: error: ld returned 1 exit status
l
每当我试图运行Perl程序时遇到错误,我就卡住了。
install_driver(ODBC) failed: Can't load '/usr/local/lib64/perl5/auto/DBD/ODBC/ODBC.so' for module DBD::ODBC: libodbc.so.1: cannot open shared object file: No such file or directory at /usr/lib64/perl5/DynaLoader.pm line 200.
at (eval 4) line 3
Compilation faile
因此,我尝试使用Perl从运行一些基本的Linux命令中捕获错误消息。例如,我尝试在运行ldd命令时捕获STDERR: # The stderr_file already exists
my $cmd = "ldd $file 2>$stderr_file";
my $output = `$cmd`; 但是,即使ldd命令的输出确实包含诸如ldd: warning: you do not have execution permission for之类的错误消息,它也不会将它们打印到$stderr_file中,我想知道为什么。 然后,我尝试自己运行命令:ldd /some
# ldd /usr/bin/ffmpeg
linux-vdso.so.1 => (0x00007ffffc1fe000)
libavfilter.so.0 => not found
libpostproc.so.51 => not found
libswscale.so.0 => not found
libavdevice.so.52 => not found
libavformat.so.52 => not found
libavcodec.so.52 => not found
li
我正在尝试在Solaris 11.3和gcc 4.8.2的基础上增加1.69。然后构建就完成了,我看到(用ldd libname.so)链接器使用相对路径在动态段标签中需要bin.v2/libs/atomic/build/gcc-4.8.2/release/threading-multi/visibility-hidden/libboost_atomic.so.1.69.0,这不是很好。我希望链接器只使用libname,没有任何路径(绝对路径或相对路径)。我怎么能设置短名字链接?
So: solaris的ldd和RHEL 6的ldd
Solaris
ldd libboost_thread.so
当我尝试运行qt-deployment时,我得到了休眠错误: 我还尝试使用ldd复制所有的so文件,并将它们放入另一个系统中,但随后我得到了分段错误(核心转储)错误 ./linuxdeployqt.AppImage /home/uia53314/LabelingTool8.0v/build-LabelingTool1-Desktop_Qt_5_12_3_GCC_64bit-Debug/LabelingTool
linuxdeployqt 5 (commit 37631e5), build 631 built on 2019-01-25 22:47:58 UTC
Not using FHS-l
我正在为Mac (10.9+)和Linux (Ubuntu18)构建我的节点模块(使用N-API)。当我将我的模块部署到远程机器(到Heroku)时,我得到: Error: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.27' not found (required by /opt/atlassian/pipelines/agent/build/addons/Release-linux/module.node)
at Object.Module._extensions..node (internal/modules/cjs
我使用Centos 6.6,有一个共享库,生成的可执行文件和任何使用这个共享库的可执行文件都无法找到它,如ldd所见。我可以找到这个库:
$ locate libcs.so.1
/opt/cloudshield/lib/libcs.so.1
ldd显示以下内容:
$ sudo ldd /opt/cloudshield/lib/libcs.so.1
ldd: warning: you do not have execution permission for `/opt/cloudshield/lib/libcs.so.1'
linux-vdso.so.1 => (0x00
我知道这个问题不是很新鲜,但似乎我无法解决我自己的问题。
ldd生成以下输出
u123@PC-Ubuntu:~$ ldd /home/u123/Programme/TestPr/Debug/TestPr
linux-vdso.so.1 => (0x00007ffcb6d99000)
libcsfml-window.so.2.2 => not found
libcsfml-graphics.so.2.2 => not found
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc