我正在尝试交叉编译这个最小的GLUT程序:
#include <GL/glut.h>
int main(int argc, char **argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("Cross-compile testing");
glutMainLoop();
return 0;
}
我使用的命令:
/tmp/ccIXyF1j.o:main.cpp:(.text+0x1c): undefined reference to `__glutInitWithExit' /tmp/ccIXyF1j.o:main.cpp:(.text+0x37): undefined reference to `__glutCreateWindowWithExit' /tmp/ccIXyF1j.o:main.cpp:(.text+0x52): undefined reference to `__glutCreateMenuWithExit' /tmp/ccIXyF1j.o:main.cpp:(.text+0x80): undefined reference to `glutInitDisplayMode' /tmp/ccIXyF1j.o:main.cpp:(.text+0x91): undefined reference to `glutMainLoop'
有什么想法吗?我正在使用Archlinux AUR(https://aur.archlinux.org/packages/mingw-w64-freeglut/)的MinGW freeglut软件包。
将-mwindows
添加到编译器选项或将#include <windows.h>
添加到代码中也无济于事。
在我的交叉编译器的lib文件夹中,我有
./libglut32.a
./libglut.la
./libglut.a
./libglut.dll.a
我做错了什么? 你有什么想法吗?