![/usr/local/cuda의 include/libs를 보도록 GCC와 Clang에 어떻게 지시합니까?](https://linux55.com/image/60724/%2Fusr%2Flocal%2Fcuda%EC%9D%98%20include%2Flibs%EB%A5%BC%20%EB%B3%B4%EB%8F%84%EB%A1%9D%20GCC%EC%99%80%20Clang%EC%97%90%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%EC%A7%80%EC%8B%9C%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
내 시스템에 CUDA가 설치되어 있지만 이에 의존하는 라이브러리가 해당 파일을 찾을 수 없는 것 같습니다. GCC와 Clang 모두 디렉토리 합계를 .bashrc
볼 수 있도록 my 뒤에 무엇을 추가해야 합니까 ?/usr/local/cuda/include
/usr/local/cuda/lib
답변1
GCC와 Clang 드라이버는 모두 다음 환경 변수를 존중합니다.
export C_INCLUDE_PATH=/usr/local/cuda/include
export CPLUS_INCLUDE_PATH=/usr/local/cuda/include
export LIBRARY_PATH=/usr/local/cuda/lib
설명서를 확인하세요.
답변2
당신은 이것을 해야 합니다:
gcc -I/path_of_include_files -L/path_of_load_libraries_files
-I
참고: 다음과 같은 것이 있을 수 있습니다 -L
.
gcc -I. -L. -I../include -L../libs
답변3
둘 다 원하는 것을 달성하는 데 도움이 될 수 있는 gcc
일부 환경 변수를 존중합니다. clang
다음을 다음 항목에 추가해 보세요 ~/.bashrc
.
export CFLAGS="-I /usr/local/cuda/include"
export LDFLAGS="-L /usr/local/cuda/lib"
그러나 이는 일반적으로 전역 수준에서 수행되지 않습니다. 프로젝트마다 다른 포함 및 라이브러리가 필요하므로 를 Makefile
사용하는 것이 가장 좋습니다 ./configure
.
답변4
사용 가능한 것이 있으면 pkgconfig
이를 사용하여 적절한 GCC 플래그를 추가할 수 있습니다.
$(pkg-config --cflags cuda) $(pkg-config --libs cuda)
예를 들어:
gcc filename.c -o outputfile $(pkg-config --cflags --libs cuda)
Makefile에서는 일반적으로 다음과 같습니다.
CFLAGS += $(pkg-config --cflags cuda)
LIBS += $(pkg-config --libs cuda)