请教“在.c文件中调用.cu文件中的函数出错”的解决方案

JuGeomBu 2009-10-07 10:54:55
就是一般的函数 例如输出一串字符
定义在.cu文件中
当对该函数使用extern“C”标志时 编译.c文件会报错
去掉“C”标志 编译时没有出错 可是链接时 报错 说 undefined reference to 该函数

若将.c文件改为.cpp文件 在加上“C”标志 则没有任何问题
想请教各位前辈 这是为什么呢?
先谢谢各位了!
...全文
211 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
trouble16 2011-12-28
  • 打赏
  • 举报
回复
同问,想问问楼主具体怎么解决的
bit525 2011-12-20
  • 打赏
  • 举报
回复
请问LZ是改成驱动api解决问题的?
驱动api和运行时api比太难掌握了
  • 打赏
  • 举报
回复
用驱动层API该就可以了(全为C语言风格).
不然,nvcc把.cu编译成.cpp和.gui两类文件.
写在.cu文件中的主机函数就如同在.cpp一样.
JuGeomBu 2009-10-08
  • 打赏
  • 举报
回复
好的 我先试试 谢谢前辈了
JuGeomBu 2009-10-08
  • 打赏
  • 举报
回复
[Quote=引用楼主 jugeombu 的回复:]
就是一般的函数 例如输出一串字符
定义在.cu文件中
当对该函数使用extern“C”标志时 编译.c文件会报错
去掉“C”标志 编译时没有出错 可是链接时 报错 说 undefined reference to 该函数

若将.c文件改为.cpp文件 在加上“C”标志 则没有任何问题
想请教各位前辈 这是为什么呢?
先谢谢各位了!
[/Quote]
前辈 我的问题解决了 谢谢您了

374

社区成员

发帖
与我相关
我的任务
社区描述
CUDA on Linux
社区管理员
  • CUDA on Linux社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧