Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows和macOS中CUDA头文件的通用路径_Windows_Macos_Makefile_Cuda_Include Path - Fatal编程技术网

Windows和macOS中CUDA头文件的通用路径

Windows和macOS中CUDA头文件的通用路径,windows,macos,makefile,cuda,include-path,Windows,Macos,Makefile,Cuda,Include Path,我正在为一个涉及CUDA的多平台项目编写一个Makefile,其中我需要提供CUDA头文件的路径。对于Linux,我可以安全地假设CUDA头文件(如果已安装)将驻留在/usr/local/CUDA/include中。与Linux不同,macOS(/Developer/NVIDIA/CUDA-8.0.61/include)和Windows(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include)的路径取决于CUDA SDK的版

我正在为一个涉及CUDA的多平台项目编写一个Makefile,其中我需要提供CUDA头文件的路径。对于Linux,我可以安全地假设CUDA头文件(如果已安装)将驻留在/usr/local/CUDA/include中。与Linux不同,macOS(/Developer/NVIDIA/CUDA-8.0.61/include)和Windows(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\include)的路径取决于CUDA SDK的版本。(这些路径是通过阅读CUDA文档和TensorFlow的Makefile得到的部分猜测,因为我不使用这些操作系统)


请帮助我在Windows和Mac OS的情况下,对CUDA头文件的通用路径。

我不相信您可以安全地承担任何事情,即使对于Linux案例(英伟达安装程序允许您选择在哪里安装所有工具包文件)。只要设计Makefile,让用户编辑Makefile或将路径作为build命令的一部分传递,并清楚地记录如何使用它,
PATH
环境变量对SDK的include文件的位置没有任何影响,您就会得到更好的服务。CUDA安装程序设置了
CUDA_PATH
变量,这就是您应该使用的变量。@talonmies是的,您是对的。我为用户提供了覆盖默认值的选项。但同时,我需要设置默认路径,以防用户没有指定任何内容。从这个意义上说,我的意思是,
/usr/local/cuda/
是一个安全的假设,因为这是默认情况下需要cuda的地方。@IInspectable我不是在这里谈论
路径
环境变量。如果这是目的,那么使用术语“PATH”来表达这一点是一个非常糟糕的选择。