使用xscreensaver编写屏幕保护程序的提示和技巧?

时间:2012-07-27 11:17:51

标签: c linux opengl screensaver

我已经做了几个月的轻微OpenGL编程,现在我想使用xscreensaver库编写一个屏幕保护程序。

我在问这个之前看过How to develop linux screen saver,但我认为这个问题不够具体。

我已经完成的工作 -

  1. 我下载了xscreensaver源并阅读了README.hacking。我在源代码的黑客目录中使用greynetic.c的代码(jwz建议用于理解自述文件中的xscreensaver)的代码。

  2. 我读了这个网页 - http://www.dis.uniroma1.it/~liberato/screensaver/simplesquares.html(来自链接问题的一个答案)。我下载了simplesquares.c代码,我正在尝试运行它。

  3. 我的问题是什么 -

    1. 我不明白我应该如何编译和执行我对任何屏幕保护程序所做的任何更改。
    2. 使用gcc编译前面提到的simplesquares.c并运行可执行文件根本不显示任何输出。我做错了吗?
    3. 注意:您必须在gcc命令中添加-lX11,以便在编译simplesquares.c时链接X11库。否则它将返回未定义的引用错误。

      修改

      在编译屏幕保护程序greynetic.c时,它会返回一些错误,其中一些我在这里转载:

      greynetic.c:(.text+0x4f): undefined reference to `XGetWindowAttributes'
      greynetic.c:(.text+0xa6): undefined reference to `get_boolean_resource'
      greynetic.c:(.text+0xd9): undefined reference to `get_pixel_resource'
      greynetic.c:(.text+0x112): undefined reference to `get_pixel_resource'
      greynetic.c:(.text+0x13e): undefined reference to `get_integer_resource'
      greynetic.c:(.text+0x185): undefined reference to `XCreateGC'
      greynetic.c:(.text+0x1dd): undefined reference to `XCreatePixmapFromBitmapData'
      

      这可能是一个链接错误。

0 个答案:

没有答案