Linux QT GCC OpenGL GLEW - 向编译器添加参数
Posted
技术标签:
【中文标题】Linux QT GCC OpenGL GLEW - 向编译器添加参数【英文标题】:Linux QT GCC OpenGL GLEW - add parameters to compiler 【发布时间】:2016-05-24 16:13:54 【问题描述】:我想用 C++ 创建示例 GLFW 文件。
当我输入 Terminal gcc FILENAME.cpp -lGL -lGLEW -lglfw
时,一切正常,
但...
当我想使用 CTRL+B 在 Qt Creator 中构建我的文件时,
我看到错误undefined reference to glfwInit
。我知道我必须添加标志-lGL -lGLEW -lglfw
,我尝试在我的pro
文件中添加QMAKE_CXXFLAGS += -lGL -lGLEW -lglfw
,但它不起作用。
这样做的正确方法是什么?
【问题讨论】:
【参考方案1】:错误的变量。你想要的
LIBS += -lGL -lGLEW -lglfw
【讨论】:
【参考方案2】:您可以通过将系统库依赖项添加到您的项目来解决此问题(不需要 QMAKE_CXXFLAGS)。 如果您打开了项目,请右键单击项目名称并选择“添加库...”,单选按钮“系统包”,“下一步>”,然后键入“glfw”作为包名称(或使用 glfw3最近的版本)。 再做两次,添加包“gl”和“glew”。 您将看到以下四行已添加到您的项目中:
unix: CONFIG += link_pkgconfig
unix: PKGCONFIG += glfw
unix: PKGCONFIG += gl
unix: PKGCONFIG += glew
现在构建(例如 CTRL-B),然后您可以运行(CTRL-R)。
我刚刚对此进行了测试,它的工作方式与 gcc 命令行完全一样(尽管我使用了 glfw3)。
这是我完整的项目文件:
QT += core
QT -= gui
TARGET = glwfeg
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += \
../glfwtest.cpp
unix: CONFIG += link_pkgconfig
unix: PKGCONFIG += glfw3
unix: PKGCONFIG += gl
unix: PKGCONFIG += glew
对于glfwtest.cpp我只是用网上的“examples/simple.c”改名了。
【讨论】:
以上是关于Linux QT GCC OpenGL GLEW - 向编译器添加参数的主要内容,如果未能解决你的问题,请参考以下文章
Qt 和 GLEW:程序以代码 -1073741515 退出
功能无法匹配GLDEBUGPROC,仅在MSVC上(使用相同的glew版本2.1.0,在linux上使用gcc / clang就可以了)