ptxas fatal : Cannot take address of function ‘_ZN8Material6SampleERK4RayRK8GVector3S5’
来源:互联网 发布:分布式数据库有哪些 编辑:程序博客网 时间:2024/06/14 20:57
终于把困扰我好几天的问题解决了。
原来是我的material类(父类)有个函数没有提供实现,导致了这个错误。
我是一个个头文件排查出来的。还有就是,这个错误的提示很奇怪,就是后面Z开头的这一串。但是可以看出是和material有关的。所以,要耐心的排查错误。仔细的检查哪一个函数没有提供实现。最后我把父类里的那个没有提供实现的函数弄成了纯虚函数,搞定!问题解决。
注意,当需要在cuda中使用很多的自定义类的时候,这些类的实现和声明都要放在同一个.h文件里,然后文件后缀名是不是.cuh倒不是很要紧。需要用global函数调用的函数,声明为__device__。还有一个就是,我的核函数之前一直没有运行,很奇怪,因为同样的代码在我师兄的windows上面结果就是正确的,很奇怪。解决办法是,我觉得可能是我的cuda8.0版本太高,gpu搞不动,然后我就卸载了cuda8.0,重新装了cuda7.5,其实还是不行,然后后面我用nvidia的nsight跑了一下,居然奇迹的好了,然后QT里面的代码也好了,无语!!!还是不知道是什么原因。
0 0
- ptxas fatal : Cannot take address of function ‘_ZN8Material6SampleERK4RayRK8GVector3S5’
- ptxas fatal : Unresolved extern function xxxx
- cuda编译错误 ptxas fatal : Unresolved extern function xxxx
- How to deal with ptxas : fatal error : Unresolved extern function 'cudaGetParameterBuffer'
- warning: function returns address of local variable
- warning: function returns address of local variable
- warning: function returns address of local variable
- fatal error: runtime: cannot map pages in arena address space
- [Swift] function pointer(address) as the parameter of function
- magento -- PHP版本引起的错误Fatal error: Method Varien_Object::__tostring() cannot take arguments
- 【c/c++】function returns address of local variable
- Fatal error: Maximum function nesting level of '100'... 错误
- Fatal error: Maximum function nesting level of '100' reached, aborting!
- Fatal error: Maximum function nesting level of '100' reached, aborting!
- Fatal error: Maximum function nesting level of '256' reached, aborting!
- Take care of fopen
- take care of myself
- TAKE CARE OF PERMISSIONS!
- soldiers
- 剑指offer--二维数组中的查找
- 浅谈CSRF攻击方式
- Linux下用C语言来实现简单的进度条
- ICMR 2017
- ptxas fatal : Cannot take address of function ‘_ZN8Material6SampleERK4RayRK8GVector3S5’
- 【编程】【leetcode】344. Reverse String
- mole
- markdown基本使用
- oracle11g日志清理
- 蓝桥杯 李白打酒
- [蓝桥杯]-猜算式
- cross
- 互联网+