Intentions
I wanted to install Nsight Eclipse in a computer running on Ubuntu 16.04 LTS without an Nvidia graphics card. This is after the sheer convenience to keep on editing and compiling mixed C++/CUDA code on this computer. Also note that the CUDA version supported by this Ubuntu release (upgrades positively not planned for the moment) is lower than 10, which I would have for compatibility with other machines. So I managed to install the appropriate deb package Cuda 10.2, following the installation guideline. I could launch Nsight and get the appropriate nvcc --version from the command line.
Unexpected
However, within the same desktop session, I could not start Paraview 5.4.1 that had run spotlessly ever since; the stderr was a curt aborted-core-dumped-suchlike.
More disruptive was that, firstly, logging out of the Unity session threw another crash report for /usr/bin/unity-control-center and, secondly, that I could not log in again in the desktop environment, for any user in the same machine. The greeter was badly rendered while checking the disks and, after accepting the (right) password, it looped back to the welcome screen. Conveniently, I could log in in the terminals and tackle the matter.
So I first uninstalled the CUDA toolkit with sudo apt remove --purge *cublas* cuda *nvidia* as indicated in section 11 of the Linux Installation guide. And effectively all did come back to normal, so CUDA had made a difference in the negative.
Looking into the two crash reports stored in /var/crash I could parse them to a certain extent only. Nonetheless I got these pieces of information. In time order of crash occurrence.
The Paraview crash
My Paraview 5.4.1 is the precompiled binaries, postpended Qt5-OpenGL2-MPI-Linux, downloadble from their site. I could not extract as much information from the core dump as for Unity. Nonetheless, the list of cuda/nvidia related lines in the crash log is
/usr/lib/nvidia-440/libGLdispatch.so.0
/usr/lib/nvidia-440/libGL.so.1.7.0
/usr/lib/nvidia-440/libGLX_nvidia.so.440.33.01
/usr/lib/nvidia-440/libGLX.so.0
/usr/lib/nvidia-440/libnvidia-glcore.so.440.33.01
/usr/lib/nvidia-440/tls/libnvidia-tls.so.440.33.01
So I presume that their being in place must have troubled Paraview.
The unity-control-center crash
The core was generated by “unity-control-center sound”. The offending messages are
E: You must put some ‘source’ URIs in your sources.list
gpgv: Signature made vr 01 dec 2017 00:13:31 CET using RSA key ID …
gpgv: Can’t check signature: public key not found
dpkg-source: warning: failed to verify signature on /tmp/tmpkblyZg/unity-control-center_15.04.0+16.04.20171130-0ubuntu1.dsc
The E:message is possibly that situation in which one has to comment in a src repository line in a file in /etc/apt/source.list. Having already uninstalled the CUDA toolkit I cannot tell whether some cuda-related src repository could have been commented in. Did I oversee that I had to do this? Anyhow, for both the prior and the current list of repositories, all src repos are commented out, and all works. Also, there is some linkage between Unity and apt, as far I can see.
The following is the list of nvidia and cuda related terms found in the crash log; are these libraries that might have contributed to the crash?
/usr/lib/x86_64-linux-gnu/libicudata.so.55.1
/usr/lib/nvidia-440/libEGL_nvidia.so.440.33.01
/usr/lib/nvidia-440/libEGL.so.440.33.01
/usr/lib/nvidia-440/libGLdispatch.so.0
/usr/lib/nvidia-440/libGLESv2.so.2.1.0
/usr/lib/nvidia-440/libGL.so.1.7.0
/usr/lib/nvidia-440/libGLX_nvidia.so.440.33.01
/usr/lib/nvidia-440/libGLX.so.0
/usr/lib/nvidia-440/libnvidia-eglcore.so.440.33.01
/usr/lib/nvidia-440/libnvidia-egl-wayland.so.1.1.4
/usr/lib/nvidia-440/libnvidia-glcore.so.440.33.01
/usr/lib/nvidia-440/libnvidia-glsi.so.440.33.01
/usr/lib/nvidia-440/tls/libnvidia-tls.so.440.33.01
Questions
The original objective stands: I would like to edit and compile code with Nsight on this computer. Is it possible to steer the installation of CUDA 10, or a stripped version thereof, so that I does not disrupt the other applications? Guidance on how to do that is much appreciated. If ths is altogether impossible, it is good to know.