하기의 내용은
내가 GTX1070을 구입하여 Ubuntu 16.04에 설치하면 발생한
문제들을 작성한 것이다.
1. Bazel로 Cuda8.0 빌드 중 발생
에러 메시지 :
this rule is missing dependency declarations for the following files included by 'tensorflow/core/kernels/dense_update_ops_gpu.cu.cc'
수정 경로 :
tensorflow/third_party/gpus/crosstool/CROSSTOOL
수정 내용 :
cxx_builtin_include_directory: "/usr/include" 아래
cxx_builtin_include_directory: "/usr/local/cuda-8.0/include" 추가
2. Cuda8.0 Sample Code 빌드 중 발생
에러 메시지 :
"/usr/local/cuda-8.0"/bin/nvcc -ccbin g++ -m64 -gencode arch=compute_20,code=compute_20 -o cudaDecodeGL FrameQueue.o ImageGL.o VideoDecoder.o VideoParser.o VideoSource.o cudaModuleMgr.o cudaProcessFrame.o videoDecodeGL.o -L/usr/lib/"nvidia-367" -lGL -lGLU -lX11 -lglut -lcuda -lcudart -lnvcuvid
/usr/bin/ld: cannot find -lnvcuvid
collect2: error: ld returned 1 exit status
수정 경로 :
/usr/local/cuda-8.0/samples/common/findgllib.mk
/usr/local/cuda-8.0/samples/3_Imaging/cudaDecodeGL/findgllib.mk
or
<your NVIDIA_CUDA-8.0_Samples path>/common/findgllib.mk
<your NVIDIA_CUDA-8.0_Samples path>/cudaDecodeGL/findgllib.mk
수정 내용 :
ifeq ("$(TARGET_OS)","linux")
# $(info) >> findgllib.mk -> LINUX path <<<)
# Each set of Linux Distros have different paths for where to find their OpenGL libraries reside
UBUNTU_PKG_NAME = "nvidia-361" 을
UBUNTU_PKG_NAME = "nvidia-370" 로 변경
수정 내용 추가 설명 :
여기에서 "nvidia-370"으로 변경하는 이유는
현재 내 PC에 Nvidia Driver 370버전을 설치하였기 때문이다.
위의 변수가 하는 역할은 설치한 드라이버 위치를 지정해 주는 것인데
그 위치가 "/usr/lib/nvidia-XXX" 식으로 이뤄져 있다.
실제 자신의 드라이버 위치를 확인하고 위의 값을 변경해야 한다.
또한 에러 메시지를 보면 어느 폴더에서 에러가 났는지 알 수 있다.
make[1]: 디렉터리 '/home/chandong83/NVIDIA_CUDA-8.0_Samples/3_Imaging/EGLStreams_CUDA_Interop' 나감
make[1]: 디렉터리 '/home/chandong83/NVIDIA_CUDA-8.0_Samples/3_Imaging/bicubicTexture' 들어감
make[1]: 'all'을(를) 위해 할 일이 없습니다.
make[1]: 디렉터리 '/home/chandong83/NVIDIA_CUDA-8.0_Samples/3_Imaging/bicubicTexture' 나감
make[1]: 디렉터리 '/home/chandong83/NVIDIA_CUDA-8.0_Samples/3_Imaging/cudaDecodeGL' 들어감
위의 메시지에서 보면 cudaDecodeGL 폴더까지 진입 후
에러가 났으니 이 부분의 findglib.mk를 손봐야한다.
3. pip로 패키지 설치 중 발생
에러 메시지 :
tensorflow-0.10.0rc0-py2-none-any.whl is not a supported wheel on this platform.
수정 내용 :
pip명령으로 진행하면 pip3가 동작함.
$ sudo python2.7 -m pip install /tmp/tensorflow_pkg/tensorflow-0.10.0rc0-py2-none-any.whl
4. python tensorflow import 시
발생
에러 메시지 :
ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory
수정 내용:
~/.bashrc에 아래 내용 추가
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/cuda/lib64"
export CUDA_HOME=/usr/local/cuda
To be Continued!
'AI > 도전' 카테고리의 다른 글
진짜 텐서플로우 라이트(TensorFlow Lite) 예제 돌려본 영상 - 안드로이드(Android) (0) | 2017.11.30 |
---|---|
안드로이드(Android) - 텐서플로우 라이트(TensorFlow Lite) 예제 돌려보기 링크 (0) | 2017.11.28 |
Team AI Korea의 Strikers 1945 돌려보기 - 우분투 (0) | 2016.11.08 |
openAI gym 우분투 설치 (0) | 2016.11.08 |
기계학습을 시작하며... (0) | 2016.11.08 |