如何为 nvcc 添加预定义宏?

Posted

技术标签:

【中文标题】如何为 nvcc 添加预定义宏?【英文标题】:How to add predefine macro for nvcc? 【发布时间】:2015-06-26 06:15:57 【问题描述】:

我目前正在编译一个将 OpenMesh 和 CUDA 集成在一起的 Qt 项目。由于我必须使用nvcc来编译项目,所以我从OpenMesh中发现了一个错误:

J:\OpenMesh2.4\include\OpenMesh/Core/System/compiler.hh(109) : fatal error C1189:
#error :  "You have to define _USE_MATH_DEFINES in the compiler settings!"

由于编译器是nvcc而不是vc编译器,即使我在“预处理器定义”中添加了宏,错误仍然出现。我只是想知道是否有办法为 nvcc 添加这个宏? 我还尝试在我的一个标题中手动添加这个宏,其中包括开放的网格标题。上面的错误消失了,但是编译给出了另一个关于 openmesh 源代码的奇怪错误。

【问题讨论】:

【参考方案1】:

找到解决方案:在 nvcc 标志中添加 -D 后跟宏...

【讨论】:

-DNAME=value,文档:***.com/questions/31066184/…

以上是关于如何为 nvcc 添加预定义宏?的主要内容,如果未能解决你的问题,请参考以下文章

nmake:如何为包含重新定义宏?

如何为 C++ 智能感知引擎定义宏?

如何为 Solaris 和 HP-AIX 定义 _FILE_OFFSET_BITS 和 _LARGE_FILES 宏

VS中添加预处理宏的方法

iOS宏定义介绍

如何为 PyQt 提供类似宏的录制功能