/usr/local/cuda의 include/libs를 보도록 GCC와 Clang에 어떻게 지시합니까?

/usr/local/cuda의 include/libs를 보도록 GCC와 Clang에 어떻게 지시합니까?

내 시스템에 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)

관련 정보