对 glutInit 的不明引用
unidentified reference to glutInit
我试图编译一个基本的 OpenGL 程序,只是一片空白 window。
我在 Linux Mint 18.1(Ubuntu 16.04 LTS)上使用带有 g++ 编译器的 CodeLite。
目前的代码是:
#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
我该怎么做才能解决这个问题?
您应该从包管理器安装库:libglew-dev
、freeglut3-dev
、libgl1-mesa-dev
和 libglu1-mesa-dev
。包含文件和二进制文件将放在适当的位置。
如果链接器找不到 .so 文件,请使用 dpkg -L freeglut3-dev 找到它们并在链接器命令行中添加此目录
g++ -L/path/to/libglut.so *.o -o programname
我试图编译一个基本的 OpenGL 程序,只是一片空白 window。 我在 Linux Mint 18.1(Ubuntu 16.04 LTS)上使用带有 g++ 编译器的 CodeLite。
目前的代码是:
#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
我该怎么做才能解决这个问题?
您应该从包管理器安装库:libglew-dev
、freeglut3-dev
、libgl1-mesa-dev
和 libglu1-mesa-dev
。包含文件和二进制文件将放在适当的位置。
如果链接器找不到 .so 文件,请使用 dpkg -L freeglut3-dev 找到它们并在链接器命令行中添加此目录
g++ -L/path/to/libglut.so *.o -o programname