c++ 库计算机类型“x86”与目标计算机类型“X64”冲突

txu3uszq  于 2023-03-25  发布在  其他
关注(0)|答案(2)|浏览(441)

我使用CUDA 9.2来模拟OpenGL的光线跟踪。
我刚刚发现,由于我的CUDA版本不支持x86构建,所以我应该使用x64库。
但还是有问题。
所有需要opengl32.lib的glut函数都会产生**“未解析的外部符号错误”**。
我以为链接器从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文件夹中。
我该如何解决这个问题?我该如何在CUDA中使用openGL?

w3nuxt5m

w3nuxt5m1#

也许您的CUDA项目中有一个目标机平台设置。
尝试在您的项目设置中查看-〉CUDA -〉Common targeting machine platform并将其更改为32位。

但是在CUDA 9.0版本之后,86平台对details的支持就不多了。
解决方案使用旧的CUDA或您的项目所依赖的新库。

vh0rcniy

vh0rcniy2#

将现用解决方案平台从x64改为x86

我使用的是Visual Studio 2022。
你可以从设置中做到这一点:Build〉Configuration manager〉Active Solution Platform〉从x64更改为x86
或者你也可以直接从外面做just open the list and change from x64 to x86.

相关问题