在Linux中将freeglut与Qt Creator链接

Linking freeglut with Qt Creator in Linux

本文关键字:Qt Creator 链接 freeglut Linux 中将      更新时间:2023-10-16

我目前在笔记本电脑上运行Arch Linux,希望知道为什么Qt Creator找不到我的供过于求库(存在于我的系统中)。

我的设置qmake文件如下所示:

     ...
    /*sources and headers above*/
    QT += opengl
    LIBS += -lfreeglut
    INCLUDEPATH += -L/usr/lib/

当我运行定位glut时,我会得到以下内容:

/usr/include/kwinglutils.h
/usr/include/kwinglutils_funcs.h
/usr/include/GL/freeglut.h
/usr/include/GL/freeglut_ext.h
/usr/include/GL/freeglut_std.h
/usr/include/GL/glut.h
/usr/lib/libglut.a
/usr/lib/libglut.so
/usr/lib/libglut.so.3
/usr/lib/libglut.so.3.9.0
/usr/share/avogadro/fragments/amino_acids/D-glutamic_acid.cml
/usr/share/avogadro/fragments/amino_acids/D-glutamine.cml
/usr/share/avogadro/fragments/amino_acids/L-glutamic_acid.cml                                                                                                               
/usr/share/avogadro/fragments/amino_acids/L-glutamine.cml
/usr/share/licenses/freeglut
/usr/share/licenses/freeglut/LICENSE
/var/lib/pacman/local/freeglut-2.6.0-1
/var/lib/pacman/local/freeglut-2.6.0-1/changelog
/var/lib/pacman/local/freeglut-2.6.0-1/desc
/var/lib/pacman/local/freeglut-2.6.0-1/files

请注意,我也在qmake文件中尝试过-lglut32

我在这里会错过什么?

当您在.pro文件中指定-lfoobar(或通常使用gcc)时,您指示编译器搜索库libfoobar.a。从你的定位输出来看,它看起来像你想要的:

LIBS += -lglut

哦,我真傻。我刚刚意识到要添加的正确库只是-lglut,而不是-lglut32。这是因为存在libglut.so,而不存在libglut32.so