web-dev-qa-db-ja.com

推奨ライブラリがありません:libGLU.so

NVIDIA CUDA をインストールしようとしています。ツールキットをインストールすると、次のエラーメッセージが表示されました。

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

私はLinuxの男ではないので、apt-get install libGLU.soそれをインストールしますが、動作しませんでした。これを修正してインストールするにはどうすればよいですか? 32ビットLinuxを使用しています。

23
PeakGen

apt-get install libglu1-mesa libxi-dev libxmu-dev libglu1-mesa-devbuntuパッケージの内容を検索する で、この情報を自分で見つけることができます。

18
Ben Whaley

Nvidia-dockerを使用してCUDA開発環境をセットアップすると、同じ問題が発生します。だから私はこの問題を解決し、Dockerfileを書き留めようとします。また、いくつかの有用なコメントを追加し、それが役立つことを願っています。

これが私の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"]
3
allenyllee

同じエラーが発生していました。私は試した Sudo apt-get install libglu1-mesaそしてそれは働いた。

0
Faeza

他のユーザーがyumを使用するのに役立つ可能性があります:cuda-10.0で私のために働く:

Sudo yum install mesa-libGLU-devel mesa-libGL-devel libXmu-devel.i686 libXi-devel.i686

0
LuciferJack

この回答によると https://stackoverflow.com/a/42428296/34252 、ライブラリをインストールした後、次のように環境を設定する必要があります。

GLPATH=/usr/lib make

makeの代わりに。

0
Find

上記のサードパーティライブラリをインストールした後、次のような問題が発生しても、NVIDIAドライバーのインストールを再度実行しても問題はありません。

/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

これは、シンボリックリンクの一部がインストールによって破損したためです。これは、CentOS 7を使用したCUDA 7です。 https://www-947.ibm.com/support/entry/portal/docdisplay?lndocid=migr-5094265

0
lppier