我已经在我的系统上安装了 CUDA,但依赖它的库似乎找不到它的文件。我应该在 my 后面附加什么,.bashrc
以便 GCC 和 Clang 都能查看目录/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)