opengl 警告:def文件末尾的.drectve已损坏

h5qlskok  于 12个月前  发布在  其他
关注(0)|答案(4)|浏览(103)

我用gcc/mingw在eclipse cdt(c++)中静态安装了glew、glfw和glm。一切正常,但我不喜欢eclipse输出控制台中的警告:
警告:def文件末尾的.drectve已损坏
如何修复和隐藏此警告?它是什么意思?
我注意到的是,只有当我调用'glewInit'函数时,这个警告才会出现。

tmb3ates

tmb3ates1#

当我遇到这个问题时,是因为我链接到了不兼容的MSVC库。keltar的一条评论帮助我解决了这个问题。
SDL 2.0: linking error

moiiocjp

moiiocjp2#

消息
警告:def文件末尾的.drectve已损坏
也可能意味着项目正在使用MinGW构建,但它使用的库是为Visual Studio创建的。
MinGW和Visual Studio构建不可互换。

koaltpgm

koaltpgm3#

我在CLion for MinGW工具链中遇到了这个错误,但是当我切换到VisualStudio工具链时,它就消失了。

knsnq2tg

knsnq2tg4#

对我来说,这个错误出现的原因是这样的:
我用mingw g构建我的项目,但我用Visual Studio构建库
不同的编译器使用不同的.lib、.a等文件
所以我的解决方案是:
1.我用cmake为MSys2 Makefiles生成了glfw文件(我通过msys2安装了make)
1.通过进入包含生成的文件的文件夹并运行make来构建它
1.将“libglfw3.a”重命名为“glfw3.lib”并将其移动到我的库目录中
然后在g
中使用标志-L"{folder that glfw3.lib is in}" -lglfw3,它编译得很好

相关问题