问题起因
关于Qt中编译cuda生成的cu文件
坑1:关于CUDA_ARCH
坑2:关于NVCC_OPTIONS
Qt中C++代码调用python
pro文件
PYTHONHOME和PYTHONPATH
其他
问题起因
实验室项目分为两部分,一部分是C++接口,负责通过socket收发报文,按协议解析报文,然后传输给后面的算法,算法来进行对数据进行处理(只能说这么多,再说估计就被叫去喝茶了),然后后期项目整合的时候,接口代码需要和算法进行整合,但是算法部分明没有在服务器上做过测试,所以我在整合的时候需要了很多坑,经过一周的点灯熬夜,终于是完美解决,写出来希望能帮到大家!!
关于Qt中编译cuda生成的cu文件
主要是配置Qt中的pro文件,贴出我百度之后亲测有效的配置
这里不同的显卡是不一样的,设置不对的话,编译应该是通过不了的
查询链接
这东西是会附加在下面的cuda.commands里使用,类似于命令行编译的时候用的指令,算法发现计算完的结果存在误差,但是不知道在linux环境如何解决,百度之,通过,如果大家需要加入其他的参数,也是在这里进行
参考链接
Qt中C++代码调用python
服务器上是通过anaconda3安装的python,自带版本是py3.7
还是先贴上我自己的配置再做说明
上面两个头文件,大家根据自己的代码去环境中找就行了,用 locate 或者干脆直接搜索都是可以的
最重要的是引用库的时候,千万别引用错了,不然编译的时候会报错
我报的错误是
https://blog.csdn.net/jiguangfan/article/details/86488573
后来发现是自己把库链接错了(好多库都是重名的,只是路径不同,所以就中招了)
编译通过之后,运行时一直报错环境变量未定义,参考了网上的很多办法,还是没有奏效,最后在代码中算是动态指定了这两个环境变量
前面两个set一定要在第三行初始化之前进行
由于算法那边开发的时候用的是windows+py3.5,但是实际的环境是linux+py3.7 应该是由于版本不同,导致了一些运行时的问题用py从文件中读取数据,然后指定的数据类型出了问题