4

I am trying to run Rstudio. And it is just not working. It worked last week when I installed it for the first time, but now that I need to use it, it doesn't. I've been trying for 5 hours, so this is my last resort.

  • System: Kubuntu 16.04 x64
  • R version: 3.2.3 x64
  • Rstudio: RStudio Desktop 0.99.903 x64
  • GLIBC: 2.23

Original error when running rstudio --run-diagnostics

Using R script: /usr/bin/R
Attempting to launch R session...
R session launched, attempting to connect on port 19650...
/usr/lib/rstudio/bin/rsession: libc.so.6: version `GLIBC_2.16' not found (required by /usr/lib/R/lib/libR.so)
/usr/lib/rstudio/bin/rsession: libc.so.6: version `GLIBC_2.18' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/usr/lib/rstudio/bin/rsession: libc.so.6: version `GLIBC_2.17' not found (required by /usr/lib/x86_64-linux-gnu/libstdc++.so.6)
/usr/lib/rstudio/bin/rsession: libc.so.6: version `GLIBC_2.17' not found (required by /usr/lib/x86_64-linux-gnu/libgomp.so.1)
/usr/lib/rstudio/bin/rsession: libc.so.6: version `GLIBC_2.16' not found (required by /lib/x86_64-linux-gnu/libtinfo.so.5)

The result is the usual blank screen. I have uninstalled & reinstalled R, reinstalled Rstudio, and tried every old Rstudio version listed here, even the x32 ones which didn't work due to the 32-64 mismatch. All x64 versions result in the error above. My R is installed in /usr/lib/R. I have also run the update command to update libc, which is already the newest version.

My libc.so.6 in /lib/ points to libc-2.15.so in the same folder. I thought that this is the reason Rstudio can't find the higher versions. My libc-2.23.so is located in /lib32/. So I thought I create a new libc.so.6 file in /lib/ that points to the 2.23 version. This fixes the GLIBC not found, but running rstudio --run-diagnostics now says:

R session launched, attempting to connect on port 13345...
/usr/lib/rstudio/bin/rsession: relocation error: /lib/libpthread.so.0: symbol h_errno, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference

And this is where I run out of useful google results. I have applied the links suggested in Missing /lib/libc.so.6 , same result (relocation error).

My final act of desparation was sudo apt-get install libc6* and sudo apt-get install '^libc6.*' which seems to have at least installed the 2.23.so in my lib64 folder. I created the symbolic link using sudo ln -s /lib64/libc.so.6 /lib/libc.so.6, same "location mismatch error". I also tried removing the x32 version of libc which didn't seem to be installed anyway.

Otherwise my system is fine. I don't have any apt-get issues or anything that the other libc6 threads seem to have in common.

Help?

1 Answers1

0

There's something pretty suspicious about a 64-bit Debian-based system (Kubuntu) with a /lib32 directory. The fact that you have massively out-of-date DSOs installed in /lib is also indicative of extreme malevolence done on your system. I suspect you installed something from an arbitrary untrusted third party source and it trampled your system in unfortunate ways.

That said, if you're going to start manually mucking about with your critical system libraries you're going to have to make sure you get it right or your only choice will be to nuke and reinstall the whole system from scratch.

It sounds from your description like you have a whole slew of incorrect libraries installed in /lib that are munging your system. Try running ldd /usr/lib/rstudio/bin/rsession and going through the resulting list, one at a time, and linking those files to the right ones.

Stephen M. Webb
  • 747
  • 5
  • 11