동적 라이브러리 'libnvinfer.so.6'을로드 할 수 없습니다


13

일반적으로 TensorFlow python 패키지를 가져 오려고하는데 다음 오류가 발생합니다.

여기에 이미지 설명을 입력하십시오

위 터미널 이미지의 텍스트는 다음과 같습니다.

2020-02-23 19:01:06.163940: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'libnvinfer.so.6'; dlerror: libnvinfer.so.6: cannot open shared object file: No such file or directory
2020-02-23 19:01:06.164019: W tensorflow/stream_executor/platform/default/dso_loader.cc:55] Could not load dynamic library 'libnvinfer_plugin.so.6'; dlerror: libnvinfer_plugin.so.6: cannot open shared object file: No such file or directory
2020-02-23 19:01:06.164030: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:30] Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properly.
<module 'tensorflow_core._api.v2.version' from '/home/saman/miniconda3/envs/testconda/lib/python3.7/site-packages/tensorflow_core/_api/v2/version/__init__.py'

문자주세요! 터미널에서 복사 / 붙여 넣기
phd

어떤 OS? 필요한 모든 라이브러리를 설치 했습니까?
phd


우분투입니다. tensorflow에 필요한 라이브러리가 있습니까?
사만 야항 기리

답변:


16

이것은 오류가 아니라 경고입니다. 여전히 TensorFlow를 사용할 수 있습니다. 공유 라이브러리 libnvinfer와는 libnvinfer_plugin선택 사항이며 엔비디아의 TensorRT 기능을 사용하는 경우에만 필요합니다.

TensorFlow의 설치 지침 에는 GPU 종속성이 나열되어 있습니다.

시스템에 다음 NVIDIA® 소프트웨어가 설치되어 있어야합니다.

  • NVIDIA® GPU 드라이버 —CUDA 10.1에는 418.x 이상이 필요합니다.
  • CUDA® 툴킷 —TensorFlow는 CUDA 10.1을 지원합니다 (TensorFlow> = 2.1.0)
  • CUPTI는 CUDA 툴킷과 함께 제공됩니다.
  • cuDNN SDK (> = 7.6)
  • (선택 사항) 일부 모델에서 유추에 대한 대기 시간 및 처리량을 향상시키는 TensorRT 6.0

다음 명령을 사용하여 Ubuntu 18.04에이를 설치할 수 있습니다 ( TensorFlow 설명서 에서 가져옴 ).

# Add NVIDIA package repositories
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu1804_10.1.243-1_amd64.deb
sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub
sudo apt-get update
wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64/nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
sudo apt install ./nvidia-machine-learning-repo-ubuntu1804_1.0.0-1_amd64.deb
sudo apt-get update

# Install NVIDIA driver
sudo apt-get install --no-install-recommends nvidia-driver-430
# Reboot. Check that GPUs are visible using the command: nvidia-smi

# Install development and runtime libraries (~4GB)
sudo apt-get install --no-install-recommends \
    cuda-10-1 \
    libcudnn7=7.6.4.38-1+cuda10.1  \
    libcudnn7-dev=7.6.4.38-1+cuda10.1


# Install TensorRT. Requires that libcudnn7 is installed above.
sudo apt-get install -y --no-install-recommends libnvinfer6=6.0.1-1+cuda10.1 \
    libnvinfer-dev=6.0.1-1+cuda10.1 \
    libnvinfer-plugin6=6.0.1-1+cuda10.1

파이썬 파일을 실행할 때마다 터미널에 표시되는 것처럼이 경고를 억제하는 방법이 있습니까?
inullpointer

1
모든 tensorflow 경고를 억제하려면 환경 변수를 설정할 수 있습니다 TF_CPP_MIN_LOG_LEVEL="2".
jakub

[tensorflow / stream_executor / platform / default / dso_loader.cc : 44] 동적 라이브러리 libnvinfer.so.6
Hrushi March

1
답변에 따라 성공적으로 설치 한 후 keras를 가져올 때마다 위의 의견을 얻습니다. 어떻게해야합니까?
Hrushi

0

이러한 메시지의 대부분은 오류가 아니라 경고입니다. Nvidia GPU를 사용하기위한 라이브러리가 설치되어 있지 않지만 Tensorflow를 사용하기 위해 Nvidia GPU가 필요하지 않으므로 이러한 라이브러리가 필요하지 않습니다. jakub의 주석은 경고를 끄는 방법을 알려줍니다.

export TF_CPP_MIN_LOG_LEVEL="2"

그러나 나도 Nvidia 물건없이 Tensorflow를 실행하고 경고가 아닌 오류라는 메시지가 하나 더 있습니다.

2020-04-10 10:04:13.365696: E tensorflow/stream_executor/cuda/cuda_driver.cc:351] failed call to cuInit: UNKNOWN ERROR (303)

Nvidia의 cuda를 참조하기 때문에 관련이 없습니다. 그래도 치명적인 오류는 아닌 것 같습니다.


0

libvnifer6 패키지를 (실수로) 업데이트 한 결과이 경고가 나타납니다. 6.0.1-1+cuda10.2원래 설치가 사용되는 동안 업데이트되었습니다 6.0.1-1+cuda10.1.

참조하는 패키지를 제거 cuda10.2하고 다시 실행 한 후

sudo apt-get install -y --no-install-recommends libnvinfer6=6.0.1-1+cuda10.1 \
    libnvinfer-dev=6.0.1-1+cuda10.1 \
    libnvinfer-plugin6=6.0.1-1+cuda10.1

이 경고는 사라졌습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.