对glutInit的不明引用

时间:2017-04-11 13:02:04

标签: c++ linux opengl glew freeglut

我尝试编译一个基本的OpenGL程序,只是一个空白窗口。 我在Linux Mint 18.1(Ubuntu 16.04 LTS)上使用CodeLite和g ++编译器。

目前的代码是:

#include <stdio.h>
#include <GL/glew.h>
#include <GL/freeglut.h>

int main(int argc, char **argv)
{
    glutInit(&argc, argv);

    printf("hello world\n");
    return 0;
}

首先,我的编译器(CodeLite中的G ++)给出了错误

/home/USER/Projects/CodeLite/Graphical/main.cpp:7: undefined reference to `glutInit'

我从他们各自的网站下载了所有最新的GLEW和GLUT,并将它们解压缩到/ usr / include / GL,I edited the project settings linker like this.

现在它给出了错误消息:

/usr/bin/ld: cannot find -lglut
Makefile:4: recipe for target 'All' failed

我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:1)

您应该从软件包管理器安装库:libglew-devfreeglut3-devlibgl1-mesa-devlibglu1-mesa-dev。包含和二进制文件将放在适当的位置。

如果链接器找不到.so文件,请使用dpkg -L freeglut3-dev找到它们,并在链接器命令行中添加此目录

g++ -L/path/to/libglut.so *.o -o programname