opencv3.2.0 + cuda 11编译错误记录(ubuntu18.04)

1    /uer/local/cuda-11.4/include/thrust/detail/type_traits.h(62): error:this declaration has no storage class or type specifier

解决办法: 更改cuda的编译其版本。在cuda10之后,由于需要使用c++11,便不再支持gcc6以下的版本。

步骤: 输入指令cmake-gui,打开cmake图形页面,将CUDA_HOST_COMPILER编辑为gcc6以上的编译器所在的位置,默认为/usr/bin/gcc-6若没有则使用以下指令安装。

sudo apt-get install gcc-6

点击configure,然后generate后,在build文件夹下输入make -j4即可。

2    error: calling a constexpr __host__ function("abs") from a __device__ function("abs") is not allowed. The experimental flag '--expt-relaxed-constexpr' can be used to allow this.

由于opencv3.2.0版本不支持c++11,所以报错。

 解决办法:在build文件夹下,输入以下指令可以解决:

cmake -DCUDA_NVCC_FLAGS=--expt-relaxed-constexpr ..

3    /usr/bin/ld: cannot find -ltrue

输入以下指令可以解决

 cmake -D CUDA_nppicom_LIBRARY=stdc++ ..

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值