我正在使用 CUDA 9.2 通过 OpenGL 模拟光线追踪。
我刚刚发现由于我的 CUDA 版本不支持 x86 构建,所以我应该使用 x64 库。
但是还是有问题
所有需要 opengl32.lib 的过剩函数都会导致“未解析的外部符号错误”。
我认为链接器从 x86 文件夹链接 opengl32.lib 文件,但是
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17134.0\um\x64\OPENGL32.lib:警告 LNK4272:库机器类型“x86”与目标机器类型“X64”冲突'
如您所见,我的 opengl32.lib 肯定在 x64 文件夹中。
我该如何解决这个问题? 如何将 openGL 与 CUDA 结合使用?
最佳答案
也许您的 CUDA 项目中可能有目标机器平台设置。
尝试在你的项目设置 -> CUDA -> Common targeting machine platform 中查看并将其更改为 32 位。
但是CUDA 9.0版本之后对86平台的支持不多了 details .
该解决方案使用您的项目所依赖的旧 CUDA 或新库。
关于c++ - 库机器类型 'x86' 与目标机器类型 'X64' 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51804240/