나는 코드를 컴파일하기 위해 노력하고, 자신의 메이크와 함께 (하지 광산은 CUDA와 통신하기 위해 C를 사용), 나는 다음과 같은 오류 메시지가 받고 있어요 :ICC을 열 수 없습니다 헤더 파일
icc -fPIC -vec-report1 -g -O3 -fno-strict-aliasing -DNDEBUG -I. -I/include -DUNIX -DCPU_RECOMPUTE=1 -DFULL_DOUBLE=0 -c classify_functions.cpp -o classify_functions.o
classify_functions.cpp(4): catastrophic error: cannot open source file "cuda_runtime.h"
#include <cuda_runtime.h>
^
compilation aborted for classify_functions.cpp (code 4)
make: *** [classify_functions.o] Error 4
을
"locate"를 사용하고 /usr/local/cuda/include/cuda_runtime.h가 있는지 확인했습니다. 그럼 내가 변수를 PATH, LD_LIBRARY_PATH 및 C_INCLUDE_PATH 내 .bashrc에 추가했지만 아무도 작동하는 것. icc 헤더 파일의 경로에 대한 또 다른 변수가 있습니까? 그렇지 않다면 컴파일러가 파일을 열 수없는 이유는 무엇입니까?
'-I/usr/local/cuda/include' 옵션을 추가해보십시오. – Adrian
makefile에서 의미가 있다고 가정 했으므로이 파일을 검색하여 "INCLUDES + = -I. -I $ (CUDA_INSTALL_PATH)/포함". 그 변수의 정의를 어디서나 찾을 수 없기 때문에 "CUDA_INSTALL_PATH =/usr/local/cuda"를 추가 했으므로 이제 문제가 해결 된 것 같습니다. 감사합니다! (프로그램이 이번에는 다른 오류를 반환했지만 헤더를 발견했습니다). 아직도, 나는 makefile에서 변수 def를 약간 추가 할 필요성을 발견했다; bashrc에 이것을 소개하는 방법이 없습니까? – Nordico
해킹으로 bashrc :'alias icc = 'icc -I/usr/local/cuda/include''에 추가 한 다음 새로운 설정으로 bash를 다시로드 할 수 있습니다. 아마도 설정해야 할 변수가있을 것입니다. gcc는'C_INCLUDE_PATH'입니다. 나는 icc에 무엇이 있는지 모른다. – Adrian