Ubuntu 16 上的 CUDA 8 示例未找到 libGLU、libGL 或 libX11

c0b*_*a1t 0 cuda ubuntu-16.04

我正在使用 CUDA 8,我可以运行一些示例,但无法运行任何可视化。我过去已经让它们工作了,但现在我无法通过全新安装在同一台计算机上重现结果。薄荷或Ubuntu。

成功安装 CUDA 后,我尝试使用makeparticles示例nbody,但收到此错误:

>>> WARNING - libGL.so not found, refer to CUDA Getting Started Guide for how to find and install them. <<<
>>> WARNING - libGLU.so not found, refer to CUDA Getting Started Guide for how to find and install them. <<<
>>> WARNING - libX11.so not found, refer to CUDA Getting Started Guide for how to find and install them. <<<
Run Code Online (Sandbox Code Playgroud)

我浏览了入门指南,但没有找到解决方案。

我正在系统地处理符号链接。也许这里有人可以提供建议......

查找请求的结果...

$ sudo find / -name 'libGLU*'

/usr/lib/i386-linux-gnu/libGLU.so.1.3.1
/usr/lib/i386-linux-gnu/libGLU.so.1
/usr/lib/x86_64-linux-gnu/libGLU.a
/usr/lib/x86_64-linux-gnu/libGLU.so.1.3.1
/usr/lib/x86_64-linux-gnu/libGLU.so.1
/usr/lib/x86_64-linux-gnu/libGLU.so
Run Code Online (Sandbox Code Playgroud)

我一直在尝试创建指向 i386* 和 x86* 库的符号链接,但尚未使其正常工作。

例如,我正在尝试

sudo ln -s /usr/lib/i386-linux-gnu/libGLU.so /usr/lib/libGLU.so
Run Code Online (Sandbox Code Playgroud)

我现在的问题是,我需要将“/usr/lib/libGLU.so”指向哪个libGLU.so?

.a ?
.1?
.1.3.1?
Run Code Online (Sandbox Code Playgroud)

x86 还是 i386?我知道我的系统是 64 位,但 CUDA 是否需要 32 位库?

似乎不应该或不会,但是......?

我已经在我能找到的每个 SO 和其他板上尝试过解决方案...两个最相关的是

Cuda 6.5 找不到 - libGLU。(在 ubuntu 14.04 64 位上)

http://kislayabhi.github.io/Installing_CUDA_with_Ubuntu/

这就是这个问题以前存在的地方。

c0b*_*a1t 5

看来答案就在罗伯特·克罗维拉提供的链接中。

    sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev libglfw3-dev libgles2-mesa-dev
Run Code Online (Sandbox Code Playgroud)

然后

GLPATH=/usr/lib make
Run Code Online (Sandbox Code Playgroud)

而不是仅仅让

解决方案的来源

谢谢罗伯特。