gray@elemental: ~$ aptitude search opengl p libghc6- opengl- dev
#include <GL/glut.h>
#include <stdlib.h>
void display( void )
{
glClearColor( 0 ,0 ,0 ,0 ) ;
glClear( GL_COLOR_BUFFER_BIT) ;
glBegin( GL_LINES) ;
glColor3f( 1 ,1 ,1 ) ;
glVertex2f( 0 ,0 ) ;
glVertex2f( 0.5 ,0.1 ) ;
glVertex2f( 0.5 ,0.1 ) ;
glVertex2f( 0.4 ,0.4 ) ;
glVertex2f( 0.4 ,0.4 ) ;
glVertex2f( - 0.1 ,0.3 ) ;
glVertex2f( 0 ,0 ) ;
glVertex2f( - 0.1 ,0.3 ) ;
glVertex2f( - 0.1 ,0.3 ) ;
glVertex2f( - 0.2 ,0 ) ;
glVertex2f( - 0.2 ,0 ) ;
glVertex2f( 0 ,0 ) ;
glVertex2f( 0 ,0 ) ;
glVertex2f( 0 ,- 0.5 ) ;
glVertex2f( 0 ,- 0.5 ) ;
glVertex2f( 0.5 ,- 0.4 ) ;
glVertex2f( 0.5 ,- 0.4 ) ;
glVertex2f( 0.5 ,0.1 ) ;
glVertex2f( 0 ,- 0.5 ) ;
glVertex2f( - 0.2 ,- 0.4 ) ;
glVertex2f( - 0.2 ,0 ) ;
glVertex2f( - 0.2 ,- 0.4 ) ;
glVertex2f( - 0.2 ,0 ) ;
glEnd( ) ;
glFlush( ) ;
}
int main( int argc, char * argv[ ] )
{
glutInit( & argc, argv) ;
glutInitWindowSize( 640 ,500 ) ;
glutInitWindowPosition( 1 ,1 ) ;
glutCreateWindow( "hut" ) ;
glutDisplayFunc( display) ;
glutMainLoop( ) ;
return EXIT_SUCCESS ;
}
Z3JheUBlbGVtZW50YWw6fiQgYXB0aXR1ZGUgc2VhcmNoIG9wZW5nbCBwICAgbGliZ2hjNi1vcGVuZ2wtZGV2ICAgICAgICAgICAgICAKI2luY2x1ZGUgPEdML2dsdXQuaD4KI2luY2x1ZGUgPHN0ZGxpYi5oPgoKdm9pZCBkaXNwbGF5KHZvaWQpCnsKICAgIGdsQ2xlYXJDb2xvcigwLDAsMCwwKTsKCiAgICBnbENsZWFyKEdMX0NPTE9SX0JVRkZFUl9CSVQpOwoKICAgIGdsQmVnaW4oR0xfTElORVMpOwoKICAgIGdsQ29sb3IzZigxLDEsMSk7CgogICAgZ2xWZXJ0ZXgyZigwLDApOwogICAgZ2xWZXJ0ZXgyZigwLjUsMC4xKTsKICAgIGdsVmVydGV4MmYoMC41LDAuMSk7CiAgICBnbFZlcnRleDJmKDAuNCwwLjQpOwogICAgCiAgICBnbFZlcnRleDJmKDAuNCwwLjQpOwogICAgZ2xWZXJ0ZXgyZigtMC4xLDAuMyk7CgogICAgZ2xWZXJ0ZXgyZigwLDApOwogICAgZ2xWZXJ0ZXgyZigtMC4xLDAuMyk7CiAgICBnbFZlcnRleDJmKC0wLjEsMC4zKTsKICAgIGdsVmVydGV4MmYoLTAuMiwwKTsKICAgIGdsVmVydGV4MmYoLTAuMiwwKTsKICAgIGdsVmVydGV4MmYoMCwwKTsKICAKICAgIGdsVmVydGV4MmYoMCwwKTsKICAgIGdsVmVydGV4MmYoMCwtMC41KTsKICAgIGdsVmVydGV4MmYoMCwtMC41KTsKICAgIGdsVmVydGV4MmYoMC41LC0wLjQpOwogICAgZ2xWZXJ0ZXgyZigwLjUsLTAuNCk7CiAgICBnbFZlcnRleDJmKDAuNSwwLjEpOwogICAgZ2xWZXJ0ZXgyZigwLC0wLjUpOwogICAgCiAgICBnbFZlcnRleDJmKC0wLjIsLTAuNCk7CiAgICBnbFZlcnRleDJmKC0wLjIsMCk7CgogICAgZ2xWZXJ0ZXgyZigtMC4yLC0wLjQpOwogICAgZ2xWZXJ0ZXgyZigtMC4yLDApOwogICAgCiAgCgoKICAgIGdsRW5kKCk7CgogICAgZ2xGbHVzaCgpOwp9CgppbnQgbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQp7CiAgICBnbHV0SW5pdCgmYXJnYywgYXJndik7CiAgICBnbHV0SW5pdFdpbmRvd1NpemUoNjQwLDUwMCk7CiAgICBnbHV0SW5pdFdpbmRvd1Bvc2l0aW9uKDEsMSk7CgogICAgZ2x1dENyZWF0ZVdpbmRvdygiaHV0Iik7CgogICAgZ2x1dERpc3BsYXlGdW5jKGRpc3BsYXkpOwoKCiAgICBnbHV0TWFpbkxvb3AoKTsKCiAgICByZXR1cm4gRVhJVF9TVUNDRVNTOwp9Cg==