gpt4 book ai didi

c++ - Ubuntu 16.04,Nvidia toolkit 8.0 RC,暗网编译错误: expected a ";"

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:03:18 32 4
gpt4 key购买 nike

我正在编译 Darknet在具有 GPU 支持的 Ubuntu 16.04 上。Nvidial 工具包 8.0 版 RC

我遇到了错误:

nvcc --gpu-architecture=compute_52 --gpu-code=compute_52  -DOPENCV `pkg-config --cflags opencv`  -DGPU -I/usr/local/cuda/include/ --compiler-options "-Wall -Wfatal-errors  -Ofast -DOPENCV -DGPU" -c ./src/convolutional_kernels.cu -o obj/convolutional_kernels.o
/usr/local/cuda/include/surface_functions.h(134): error: expected a ";"

/usr/local/cuda/include/surface_functions.h(135): error: expected a ";"

/usr/local/cuda/include/surface_functions.h(136): error: expected a ";"

/usr/local/cuda/include/surface_functions.h 在错误行有这样的东西:

template<> __device__ __cudart_builtin__ char surf1Dread(surface<void, cudaSurfaceType1D> surf, int x, enum cudaSurfaceBoundaryMode mode) asm("__surf1Dread_char") ;

有什么建议吗?

最佳答案

因此,当您的环境在编译过程中使用不同版本的 nvcc 二进制文件和 cuda includes 文件时,就会发生这种情况。

Darknet 使用 /usr/local/cuda/include/ 作为它的包含路径但在执行 nvcc 二进制文件时依赖于你的PATH。它可能属于您在系统中安装的另一个 cuda。

为了避免这种情况,强制您的 shell 在/usr/local/cuda/bin/nvcc 中搜索 nvcc。

这可以通过修改 Makefile 中的 nvcc 路径来完成:

替换 NVCC=nvcc NVCC=/usr/local/cuda/bin/nvcc

或通过为 make 命令修改 PATH 变量(更简单且与 session 相关)

PATH=/usr/local/cuda/bin:$PATH make

关于c++ - Ubuntu 16.04,Nvidia toolkit 8.0 RC,暗网编译错误: expected a ";",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39287744/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com