2014-03-12 8 views
16

Ich versuche, NVIDIA CUDA zu installieren. Bei der Installation des Toolkits wurde folgende Fehlermeldung angezeigt.Fehlende empfohlene Bibliothek: libGLU.so

Missing recommended library: libGLU.so 
Missing recommended library: libXi.so 
Missing recommended library: libXmu.so 

Ich bin kein Linux Kerl, so habe ich apt-get install libGLU.so es zu installieren, aber es hat nicht funktioniert. Wie kann ich das beheben und installieren? Ich bin auf 32-Bit-Linux.

+0

Für die nahe Wähler: Wenn "any" von euch ist ein Held der libGLU zu installieren, ist es dann zuerst sagen. –

+0

Möglicherweise meine Antwort akzeptieren, wenn es für Sie funktioniert hat? :) –

Antwort

13

Versuchen Sie apt-get install libglu1-mesa libxi-dev libxmu-dev libglu1-mesa-dev. Sie finden diese Informationen selbst unter searching the Ubuntu package contents.

+1

Danke für die Antwort. libGLU fehlt noch, andere sind installiert, –

+4

Es ist möglich, dass die 'libglu1-mesa'-Installation keine notwendige symbolische Verbindung eingerichtet hat. So etwas kann nötig sein: 'sudo ln -s /usr/lib/libGLU.so.1/usr/lib/libGLU.so 'JEDOCH können sich die Verzeichnisse leicht unterscheiden, wie zum Beispiel'/usr/lib32' anstelle von '/ usr/lib'. Also lerne, was ein symbolischer Link ist ('man ln'), dann stochere herum und schau, ob du finden kannst, wo' libglu1-mesa' die 'libGLU.so.1' Datei setzt, dann benutze diesen Pfad entsprechend. –

+0

Ich habe sowohl in/usr/lib und/usr/lib32 eingecheckt. Konnte es nicht finden. –

0

Nachdem Sie tun, um die Installation der oben genannten 3rd-Party-Bibliotheken, kein Schaden der NVIDIA-Treiber-Installation läuft wieder, wenn Sie so etwas wie dies auftreten:

/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-redhat-linux/4.8.2/../../../libGL.so when searching for -lGL/usr/bin/ld: skipping incompatible /lib/libGL.so when searching for -lGL 
/usr/bin/ld: skipping incompatible /usr/lib/libGL.so when searching for -lGL 
/usr/bin/ld: cannot find -lGL 
collect2: error: ld returned 1 exit status 
make: *** [simpleGL] Error 1 

Dies liegt daran, einige der symbolischen Links durch die gebrochen wurden Installation. Das ist CUDA 7 mit CentOS 7. https://www-947.ibm.com/support/entry/portal/docdisplay?lndocid=migr-5094265

2

Ich benutze nvidia-docker, um eine CUDA Entwicklungsumgebung einzurichten, auch das gleiche Problem auftreten. Also versuche ich, dieses Problem zu lösen und eine Dockerfile aufzuschreiben. Fügen Sie auch einige nützliche Kommentare hinzu, hoffe, dass es hilfreich sein wird.

Hier ist meine Dockerfile:

https://github.com/allenyllee/server_setup/blob/master/nvidia_docker/Dockerfile

# CUDA 8.0 
# 
# VERSION    0.0.1 

FROM  nvidia/cuda:8.0-devel-ubuntu16.04 
LABEL  maintainer="[email protected]" 

## 
## Ubuntu - Packages - Search 
## https://packages.ubuntu.com/search?suite=xenial&section=all&arch=amd64&searchon=contents&keywords=Search 
## 

### 
### solve for 
### >>> WARNING - libGL.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. <<< 
### >>> WARNING - Xlib.h not found, refer to CUDA Getting Started Guide for how to find and install them. <<< 
### >>> WARNING - gl.h not found, refer to CUDA Getting Started Guide for how to find and install them. <<< 
### 
### 2_Graphics/volumeFiltering 
### 2_Graphics/simpleGL 
### 2_Graphics/bindlessTexture 
### 2_Graphics/volumeRender 
### 2_Graphics/Mandelbrot 
### 2_Graphics/marchingCubes 
### 2_Graphics/simpleTexture3D 
### 3_Imaging/imageDenoising 
### 3_Imaging/recursiveGaussian 
### 3_Imaging/simpleCUDA2GL 
### 3_Imaging/postProcessGL 
### 3_Imaging/bicubicTexture 
### 3_Imaging/boxFilter 
### 3_Imaging/SobelFilter 
### 3_Imaging/cudaDecodeGL 
### 3_Imaging/bilateralFilter 
### 5_Simulations/particles 
### 5_Simulations/smokeParticles 
### 5_Simulations/oceanFFT 
### 5_Simulations/fluidsGL 
### 5_Simulations/nbody 
### 6_Advanced/FunctionPointers 
### 7_CUDALibraries/randomFog 
### 
RUN apt update && apt -y install libgl1-mesa-dev 

### 
### solve for 
### >>> WARNING - libGLU.so not found, refer to CUDA Getting Started Guide for how to find and install them. <<< 
### >>> WARNING - glu.h not found, refer to CUDA Getting Started Guide for how to find and install them. <<< 
### 
RUN apt update && apt -y install libglu1-mesa-dev 

### 
### solve for 
### /usr/bin/ld: cannot find -lglut 
### https://stackoverflow.com/questions/15064159/usr-bin-ld-cannot-find-lglut 
### 
RUN apt update && apt -y install freeglut3-dev 

### 
### solve for 
### >>> WARNING - egl.h not found, please install egl.h <<< 
### >>> WARNING - eglext.h not found, please install eglext.h <<< 
### >>> WARNING - gl31.h not found, please install gl31.h <<< 
### 
### 2_Graphics/simpleGLES_EGLOutput 
### 2_Graphics/simpleGLES 
### 2_Graphics/simpleGLES_screen 
### 5_Simulations/nbody_opengles 
### 5_Simulations/fluidsGLES 
### 5_Simulations/nbody_screen 
### 
RUN apt update && apt -y install libgles2-mesa-dev 


### 
### You should also search 'UBUNTU_PKG_NAME = "nvidia-367"' and replace it to 'UBUNTU_PKG_NAME = "nvidia"' 
### for all matched files in the NVIDIA_CUDA-8.0_Samples folder to make it works. 
### 
RUN mkdir /usr/lib/nvidia && \ 
    ### solve for /usr/bin/ld: cannot find -lnvcuvid \ 
    ### 3_Imaging/cudaDecodeGL \ 
    ln -s /usr/local/nvidia/lib64/libnvcuvid.so.1 /usr/lib/nvidia/libnvcuvid.so && \ 
    ### solve for >>> WARNING - libEGL.so not found, please install libEGL.so <<< \ 
    ### 3_Imaging/EGLStreams_CUDA_Interop \ 
    ln -s /usr/local/nvidia/lib64/libEGL.so.1 /usr/lib/nvidia/libEGL.so && \ 
    ### solve for >>> WARNING - libGLES.so not found, please install libGLES.so <<< \ 
    ### 2_Graphics/simpleGLES_EGLOutput \ 
    ### 2_Graphics/simpleGLES \ 
    ### 2_Graphics/simpleGLES_screen \ 
    ### 5_Simulations/nbody_opengles \ 
    ### 5_Simulations/fluidsGLES \ 
    ### 5_Simulations/nbody_screen \ 
    ln -s /usr/local/nvidia/lib64/libGLESv2_nvidia.so.2 /usr/lib/nvidia/libGLESv2.so 


CMD ["bash"]