我正在运行Ubuntu Budgie 64位:
lsb_release -a
:
Distributor ID: Ubuntu
Description: Ubuntu 18.04.1 LTS
Release: 18.04
Codename: bionic
lscpu
:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 2
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 76
Model name: Intel(R) Celeron(R) CPU N3050 @ 1.60GHz
Stepping: 3
CPU MHz: 2160.000
CPU max MHz: 2160.0000
CPU min MHz: 480.0000
BogoMIPS: 3200.00
Virtualization: VT-x
L1d cache: 24K
L1i cache: 32K
L2 cache: 1024K
NUMA node0 CPU(s): 0,1
Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology tsc_reliable nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes rdrand lahf_lm 3dnowprefetch epb pti tpr_shadow vnmi flexpriority ept vpid tsc_adjust smep erms dtherm ida arat
我按照以下说明进行了全新的R 3.5安装(r-base和r-base-dev):https://cran.cnr.berkeley.edu
一切似乎都正常,
R
R version 3.5.1 (2018-07-02) -- "Feather Spray"
Copyright (C) 2018 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
但是,当我要安装新软件包(例如install.packages("ggplot2")
)时,编译会失败,并显示以下错误:
/usr/bin/x86_64-linux-gnu-ld: /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so:
error loading plugin: /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so:
wrong ELF class: ELFCLASS64
collect2: error: ld returned 1 exit status
我尝试安装的其他其他软件包(dplyr,Rcpp)也因此错误而失败。
到目前为止,我已经尝试通过添加/usr/lib/R/etc/Makeconf
标志来处理-m64
中的gcc / g ++编译标志。但是我仍然遇到同样的问题。
更新:
file -L /usr/bin/x86_64-linux-gnu-ld
给出:
x86_64-linux-gnu-ld: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV),
dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 3.2.0,
BuildID[sha1]=8263ec62232df7411c36026e7e3e02afbfeb8b4f, stripped
更新2:
我发现我可以通过突触软件包管理器并通过r-cran
下载软件包。例如,我只运行install.packages("ggplot2")
sudo apt-get install r-cran-ggplot2
答案 0 :(得分:0)
您的GCC安装已被拧紧。
特别是,您具有32位链接器(x86_64-linux-gnu-ld
),但具有64位LTO插件liblto_plugin.so
。
这些应该匹配。您应该找出哪个软件包提供了以上两个文件,并为每个软件包安装32位或64位版本。
答案 1 :(得分:0)
我最近遇到了几乎相同的问题,除了aarch64链接器上的armhf liblto_plugin.so。在(有意)在aarch64主机上安装gcc:armhf和binutils:armhf之后,我陷入了这种情况。解决方案是安装不太明显的名为var myFunction = function main() { /* your code here */ }
var stringifiedFunction = '' + myFunction;
的软件包。
按照@Employed Russian所说的内容,您需要安装适当的binutils。试试:
binutils-arm-linux-gnueabihf:armhf
如果找不到或无法使用这些软件包,请按照我的需要,尝试通过apt-file搜索正确的软件包名称。
sudo apt install --reinstall binutils:amd64 binutils-x86_64-linux-gnu:amd64