标签: ld

找不到 -lgfortran

我正在尝试在 R 中安装一个包(包“ks”)。它失败并显示错误消息:

/usr/bin/ld: cannot find -lgfortran
Run Code Online (Sandbox Code Playgroud)

我已经安装了 Ubuntu 包 build-essential:

sudo apt-get install build-essential
Run Code Online (Sandbox Code Playgroud)

我也试过添加符号链接:

sudo ln -s /usr/lib/x86_64-linux-gnu/libgfortran.so.3 /usr/lib/libgfortran.so
sudo ln -s /usr/lib/libgfortran.so.3.0.0 /usr/lib/libgfortran.so
sudo ldconfig
Run Code Online (Sandbox Code Playgroud)

我经常使用 gcc 和 g++,但还没有理由使用 gfortran。

我在 gcc-4.7 ( http://ubuntuforums.org/showthread.php?t=2123821 )上看到其他人有这个问题,所以我想知道这是否来自手动安装 gcc-4.7。我跟着从接受的答案在这里的配方在这里,在这里在这里

运行lsb_release -a打印

Ubuntu 12.04.2 LTS

和运行uname -r打印

3.2.0-39-generic-pae

任何人都可以就为什么ld不起作用提供建议吗?

compiling gcc fortran ld

15
推荐指数
4
解决办法
3万
查看次数

无法预加载代理链 LD_PRELOAD

在 ubuntu 12.04.2 中使用代理链进行 apt-get 更新

sudo proxychains  apt-get update
Run Code Online (Sandbox Code Playgroud)

给出以下错误

ERROR: ld.so: object 'libproxychains.so.3' from LD_PRELOAD cannot be preloaded: ignored.
Run Code Online (Sandbox Code Playgroud)

我怎样才能避免这个错误?

proxy libraries 12.04 ld

12
推荐指数
1
解决办法
3万
查看次数

对符号“exp@@GLIBC_2.2.5”的未定义引用

类似的问题已被问到here,但没有得到答复。

我有一个Levenberg-Marquardt(从某处下载)的实现,我正在尝试编译它,但出现以下错误。

gauravloj@vertex:~/Documents/source_code/non-rigid_registration/Gauss_newton/levmar-2.6$ make
[ 87%] Built target levmar
Linking C executable lmdemo
/usr/bin/ld: CMakeFiles/lmdemo.dir/lmdemo.c.o: undefined reference to symbol 'exp@@GLIBC_2.2.5'
//lib/x86_64-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
make[2]: *** [lmdemo] Error 1
make[1]: *** [CMakeFiles/lmdemo.dir/all] Error 2
make: *** [all] Error 2
Run Code Online (Sandbox Code Playgroud)

在许多站点,给出的解决方案是添加一些标志(例如这里这里)。但他们都没有为我工作。

是 Makefile,是 CMakeLists.txt,是 CMakeCache.txt。

compiling make ld cmake

11
推荐指数
3
解决办法
5万
查看次数

在 ARM(HF) 系统上运行 ARM(EL) 可执行文件 - 缺少动态加载程序的符号链接?

我在熊猫板上使用 Ubuntu 12.10 (ARMHF) 发行版。我想运行为 ARMEL 编译的应用程序。由于动态加载器位置发生变化,这是不可能的(https://wiki.linaro.org/OfficeofCTO/HardFloat/LinkerPathCallApr2012

我成功地创建了以下符号链接 /lib/ld-linux.so.3 -> /lib/ld-linuxarmhf.so.3

有没有办法安装便携包?是否有理由不通过发行版完成此操作?

提前致谢

arm multiarch 12.10 ld

5
推荐指数
2
解决办法
2120
查看次数

collect2: 错误: ld 返回 1 个退出状态

我想在 ubuntu 13.10 上安装 nexalign(可以从这里下载)。我之前在 ubuntu 10 上安装了它,没有任何问题。我得到的错误是:

gcc   -O9 -Wall -Dthread -lpthread main.o mapping.o interface.o input.o sarray.o mem.o output.o pattern_searching.o pattern_searching_solid.o string_matching.o time.o misc.o bt.o mapping_output.o hash.o r_output.o mapping_solid.o pattern_searching_short.o sort_mapping.o cluster_mapping.o -o nexalign
mapping.o: In function `mapping':
mapping.c:(.text+0x21e): undefined reference to `pthread_create'
mapping.c:(.text+0x276): undefined reference to `pthread_join'
mapping.c:(.text+0x410): undefined reference to `pthread_create'
mapping.c:(.text+0x65e): undefined reference to `pthread_create'
mapping_solid.o: In function `mapping_solid':
mapping_solid.c:(.text+0x1f4): undefined reference to `pthread_create'
mapping_solid.c:(.text+0x23b): undefined reference to `pthread_join'
mapping_solid.c:(.text+0x3dc): undefined reference to `pthread_create' …
Run Code Online (Sandbox Code Playgroud)

compiling gcc make ld

5
推荐指数
1
解决办法
8227
查看次数

已安装 Cuda 工具包 7.5,但仍保留 libcudart.so.5.5

在 Ubuntu 14.04 上安装 Cuda Toolkit 7.5(通过 .deb 文件的 apt-get,然后将 nvidia 驱动程序更新到 352.63)后,nvcc --version、NVidia-smi 和 cuda 示例按预期工作。

7.5 安装在/usr/local/cuda-7.5/usr/local/cuda软链接到该位置。

该文件/etc/profile.d/cuda-7-5.sh仅包含以下行:

PATH=/usr/local/cuda/bin:$PATH
Run Code Online (Sandbox Code Playgroud)

而且两者/etc/ld.so.conf.d/cuda-7-5.conf/etc/ld.so.conf.d/cuda-7-5.sh只包含行:

/usr/local/cuda/lib64
Run Code Online (Sandbox Code Playgroud)

但是,系统仍然包含/usr/lib/x86_64-linux-gnu/libcudart.so.5.5.

问题:

  1. 为什么/usr/lib/x86_64-linux-gnu/libcudart.so.5.5还存在?它是必需的,还是可以删除?删除它的步骤是什么,是否需要重新安装7.5?

  2. 内容是否/etc/ld.so.conf.d/cuda-7-5.sh正确,还是应该如下所示?:

    LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
    
    Run Code Online (Sandbox Code Playgroud)

apt compiling cuda drivers ld

5
推荐指数
0
解决办法
733
查看次数

如何重置 LD_PRELOAD

我已经完成了以下命令来设置 LD_PRELOAD 的路径。但这是错误的路径。

export LD_PRELOAD=/home/
Run Code Online (Sandbox Code Playgroud)

有谁知道 Ubuntu 12.04 上 LD_PRELOAD 的默认路径是什么?重置导出的确切命令是什么?

environment-variables 12.04 ld dynamic-linking

3
推荐指数
1
解决办法
1万
查看次数

找不到-lpcre2-8

我正在尝试在 Rstudio 中安装rjava以下库显示错误-lpcre2-8, -lbz2, -lz

有什么办法可以解决这些问题吗?在其他网站和各种极客提供的解决方案上没有得到任何运气。系统:ubuntu-20.04

错误代码:

/usr/bin/ld: cannot find -lpcre2-8
/usr/bin/ld: cannot find -lbz2
/usr/bin/ld: cannot find -lz
collect2: error: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)

ld rstudio

1
推荐指数
1
解决办法
1751
查看次数