python - 在 Fedora 上设置 OpenGL

标签 python c linux opengl fedora

我一直在尝试为我的计算机设置(安装并获取正确的库)以便我可以开始图形编程。

我访问过 OpenGL 站点,发现它没有帮助。 我尝试了维基教科书的 Setting up page ,但是它有特定于 Debian 和类似 Debian 的系统的安装信息,我找不到 fedora 的相应内容。

我知道 C 和 python,如果可能的话我更愿意用 C 工作,我确实找到了 PyOpenGL.noarch 并使用 yum 安装了它。

我查了几个其他网站并没有找到太多但我设法安装了 freeglut-devel

我检查并在/usr/include/GL 文件夹中找到了 GL 库,但是当我尝试运行以下代码时{取自 wikibooks 站点本身,所以我假设它有效}:

#include <stdio.h> /* printf */
#include <GL/glut.h> /* glut graphics library */
/* 
* Linux c console program 
* gcc f.c -lglut
* ./a.out
* */
main(int argc, char **argv)
{
   glutInit(&argc, argv);
   glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
   glutCreateWindow("red 3D lighted cube");
   printf("GL_VERSION = %s\n",glGetString(GL_VERSION) ); /* GL_VERSION = 2.1.2 NVIDIA      195.36.24 */

return 0; 
}

当我执行 gcc -lglut filename.c

我收到以下错误:

/usr/bin/ld: /usr/lib/gcc/i686-redhat-linux/4.6.1/../../../libglut.so: undefined reference to symbol 'glGetString'
/usr/bin/ld: note: 'glGetString' is defined in DSO /usr/lib/libGL.so.1 so try adding it to the linker command line
/usr/lib/libGL.so.1: could not read symbols: Invalid operation
collect2: ld returned 1 exit status

我不知道该怎么做。

我们将不胜感激,但如果有任何帮助,我们将不胜感激。

最佳答案

尝试将 -lGL 添加到您用来编译它的命令行中(错误消息告诉您这样做)。

This question还建议您还需要 -lGLU

此外,我会将库放在使用它们的源文件之后,因此:

gcc filename.c -lglut -lGL -lGLU

代替:

gcc -lglut -lGL -lGLU filename.c 

有关您在 fedora 上收到此消息的原因的更多信息 here ,但基本修复是显式链接丢失的库。

关于python - 在 Fedora 上设置 OpenGL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9355733/

相关文章:

python - 只获取 Pandas 数据框中其他属性不同值的第一行?

python - 雅虎财经 ichart 服务可用性

objective-c - 在 C 代码中重复符号 _fopen_file_func,在 objective-c 项目中

C : Incorrect sizeof calculation of nested structure

python - PyAutoGui点击权限错误

python - 美丽汤网页抓取 : How do i scrape this particular html structure

c - 我该如何处理 "segmentation fault(core dumped)"错误?(没有在其他地方找到答案)

linux - linux内核中的大尺寸kmalloc kmalloc

linux - 用户模式同步与内核模式同步(在 Linux 和 Windows 中)

linux - 使用 sed 打印以两种不同模式开头的行