ok i still get errors, see below.
could anybody point me towards some
docs which describe what
is actually going on with all of this?
i don't know how to read any of this,
and also there is no doco that i can see for
the actual opengl code that i'm using,
(if/what i need installed beforehand, etc...)
at least not in english. the README is ext .EUC. i am guessing
this is because it is in japanese?
thanks much

p.s. since this failed a couple of times, do i need to
clean up anywhere?

[localhost:DLs/compressed/opengl] cmckeon% ruby extconf.rb
checking for () in -lGL... yes
checking for () in -lGLU... yes
creating Makefile
checking for XAllowDeviceEvents() in -lXi... yes
checking for XMITMiscGetBugMode() in -lXext... yes
checking for XmuAddCloseDisplayHook() in -lXmu... yes
checking for () in -lglut... yes
creating Makefile
[localhost:DLs/compressed/opengl] cmckeon% make
Now Making glut extend module
gcc -fno-common -no-cpp-precomp -flat_namespace -pipe -no-precomp  -I. 
-I. -I/usr/local/lib/ruby/1.6/powerpc-darwin5.3 -I. 
-I/usr/local/include    -I/usr/X11R6/include -c -o glut.o glut.c
glut.c:8: GL/glut.h: No such file or directory
glut.c: In function `glut_SetColor':
glut.c:817: `GLfloat' undeclared (first use in this function)
glut.c:817: (Each undeclared identifier is reported only once
glut.c:817: for each function it appears in.)
glut.c:817: parse error before `red'
glut.c:821: `red' undeclared (first use in this function)
glut.c:821: parse error before `rb_num2dbl'
glut.c:822: `green' undeclared (first use in this function)
glut.c:822: parse error before `rb_num2dbl'
glut.c:823: `blue' undeclared (first use in this function)
glut.c:823: parse error before `rb_num2dbl'
glut.c: In function `glut_GetColor':
glut.c:833: `GLfloat' undeclared (first use in this function)
glut.c:833: parse error before `ret'
glut.c:836: `ret' undeclared (first use in this function)
glut.c:836: parse error before `glutGetColor'
glut.c: In function `glut_Get':
glut.c:854: `GLenum' undeclared (first use in this function)
glut.c:854: parse error before `type'
glut.c:856: `type' undeclared (first use in this function)
glut.c: In function `glut_DeviceGet':
glut.c:864: `GLenum' undeclared (first use in this function)
glut.c:864: parse error before `type'
glut.c:866: `type' undeclared (first use in this function)
glut.c: In function `glut_WireSphere':
glut.c:983: `GLdouble' undeclared (first use in this function)
glut.c:983: parse error before `radius'
glut.c:984: `GLint' undeclared (first use in this function)
glut.c:986: `radius' undeclared (first use in this function)
glut.c:986: parse error before `rb_num2dbl'
glut.c:987: `slices' undeclared (first use in this function)
glut.c:988: `stacks' undeclared (first use in this function)
glut.c: In function `glut_SolidSphere':
glut.c:996: `GLdouble' undeclared (first use in this function)
glut.c:996: parse error before `radius'
glut.c:997: `GLint' undeclared (first use in this function)
glut.c:999: `radius' undeclared (first use in this function)
glut.c:999: parse error before `rb_num2dbl'
glut.c:1000: `slices' undeclared (first use in this function)
glut.c:1001: `stacks' undeclared (first use in this function)
glut.c: In function `glut_WireCone':
glut.c:1009: `GLdouble' undeclared (first use in this function)
glut.c:1009: parse error before `base'
glut.c:1011: `GLint' undeclared (first use in this function)
glut.c:1013: `base' undeclared (first use in this function)
glut.c:1013: parse error before `rb_num2dbl'
glut.c:1014: `height' undeclared (first use in this function)
glut.c:1014: parse error before `rb_num2dbl'
glut.c:1015: `slices' undeclared (first use in this function)
glut.c:1016: `stacks' undeclared (first use in this function)
glut.c: In function `glut_SolidCone':
glut.c:1024: `GLdouble' undeclared (first use in this function)
glut.c:1024: parse error before `base'
glut.c:1026: `GLint' undeclared (first use in this function)
glut.c:1028: `base' undeclared (first use in this function)
glut.c:1028: parse error before `rb_num2dbl'
glut.c:1029: `height' undeclared (first use in this function)
glut.c:1029: parse error before `rb_num2dbl'
glut.c:1030: `slices' undeclared (first use in this function)
glut.c:1031: `stacks' undeclared (first use in this function)
glut.c: In function `glut_WireCube':
glut.c:1039: `GLdouble' undeclared (first use in this function)
glut.c:1039: parse error before `size'
glut.c:1040: `size' undeclared (first use in this function)
glut.c:1040: parse error before `rb_num2dbl'
glut.c: In function `glut_SolidCube':
glut.c:1048: `GLdouble' undeclared (first use in this function)
glut.c:1048: parse error before `size'
glut.c:1049: `size' undeclared (first use in this function)
glut.c:1049: parse error before `rb_num2dbl'
glut.c: In function `glut_WireTorus':
glut.c:1057: `GLdouble' undeclared (first use in this function)
glut.c:1057: parse error before `innerRadius'
glut.c:1059: `GLint' undeclared (first use in this function)
glut.c:1061: `innerRadius' undeclared (first use in this function)
glut.c:1061: parse error before `rb_num2dbl'
glut.c:1062: `outerRadius' undeclared (first use in this function)
glut.c:1062: parse error before `rb_num2dbl'
glut.c:1063: `sides' undeclared (first use in this function)
glut.c:1064: `rings' undeclared (first use in this function)
glut.c: In function `glut_SolidTorus':
glut.c:1072: `GLdouble' undeclared (first use in this function)
glut.c:1072: parse error before `innerRadius'
glut.c:1074: `GLint' undeclared (first use in this function)
glut.c:1076: `innerRadius' undeclared (first use in this function)
glut.c:1076: parse error before `rb_num2dbl'
glut.c:1077: `outerRadius' undeclared (first use in this function)
glut.c:1077: parse error before `rb_num2dbl'
glut.c:1078: `sides' undeclared (first use in this function)
glut.c:1079: `rings' undeclared (first use in this function)
glut.c: In function `glut_WireTeapot':
glut.c:1101: `GLdouble' undeclared (first use in this function)
glut.c:1101: parse error before `size'
glut.c:1102: `size' undeclared (first use in this function)
glut.c:1102: parse error before `rb_num2dbl'
glut.c: In function `glut_SolidTeapot':
glut.c:1110: `GLdouble' undeclared (first use in this function)
glut.c:1110: parse error before `size'
glut.c:1111: `size' undeclared (first use in this function)
glut.c:1111: parse error before `rb_num2dbl'
glut.c: In function `Init_glut':
glut.c:1235: `glut_InitDisplayString' undeclared (first use in this 
function)
glut.c:1255: `glut_FullScreen' undeclared (first use in this function)
glut.c:1256: `glut_SetCurcor' undeclared (first use in this function)
glut.c:1257: `glut_WarpPointer' undeclared (first use in this function)
glut.c:1258: `glut_EstablishOverlay' undeclared (first use in this 
function)
glut.c:1259: `glut_RemoveOverlay' undeclared (first use in this function)
glut.c:1260: `glut_UseLayer' undeclared (first use in this function)
glut.c:1261: `glut_PostOverlayRedisplay' undeclared (first use in this 
function)
glut.c:1262: `glut_ShowOverlay' undeclared (first use in this function)
glut.c:1263: `glut_HideOverlay' undeclared (first use in this function)
glut.c:1281: `glut_ExtensionSupported' undeclared (first use in this 
function)
glut.c:1282: `glut_GetModifiers' undeclared (first use in this function)
glut.c:1283: `glut_LayerGet' undeclared (first use in this function)
glut.c:1288: `glut_BitmapLength' undeclared (first use in this function)
glut.c:1289: `glut_StrokeLength' undeclared (first use in this function)
glut.c:1308: `glut_VideoResizeGet' undeclared (first use in this 
function)
glut.c:1309: `glut_SetupVideoResizing' undeclared (first use in this 
function)
glut.c:1310: `glut_StopVideoResizing' undeclared (first use in this 
function)
glut.c:1311: `glut_VideoResize' undeclared (first use in this function)
glut.c:1312: `glut_VideoPan' undeclared (first use in this function)
glut.c:1313: `glut_ReportErrors' undeclared (first use in this function)
glut.c:1317: `GLUT_API_VERSION' undeclared (first use in this function)
glut.c:1318: `GLUT_XLIB_IMPLEMENTATION' undeclared (first use in this 
function)
glut.c:1319: `GLUT_RGB' undeclared (first use in this function)
glut.c:1320: `GLUT_RGBA' undeclared (first use in this function)
glut.c:1321: `GLUT_INDEX' undeclared (first use in this function)
glut.c:1322: `GLUT_SINGLE' undeclared (first use in this function)
glut.c:1323: `GLUT_DOUBLE' undeclared (first use in this function)
glut.c:1324: `GLUT_ACCUM' undeclared (first use in this function)
glut.c:1325: `GLUT_ALPHA' undeclared (first use in this function)
glut.c:1326: `GLUT_DEPTH' undeclared (first use in this function)
glut.c:1327: `GLUT_STENCIL' undeclared (first use in this function)
glut.c:1328: `GLUT_MULTISAMPLE' undeclared (first use in this function)
glut.c:1329: `GLUT_STEREO' undeclared (first use in this function)
glut.c:1330: `GLUT_LUMINANCE' undeclared (first use in this function)
glut.c:1331: `GLUT_LEFT_BUTTON' undeclared (first use in this function)
glut.c:1332: `GLUT_MIDDLE_BUTTON' undeclared (first use in this function)
glut.c:1333: `GLUT_RIGHT_BUTTON' undeclared (first use in this function)
glut.c:1334: `GLUT_DOWN' undeclared (first use in this function)
glut.c:1335: `GLUT_UP' undeclared (first use in this function)
glut.c:1336: `GLUT_KEY_F1' undeclared (first use in this function)
glut.c:1337: `GLUT_KEY_F2' undeclared (first use in this function)
glut.c:1338: `GLUT_KEY_F3' undeclared (first use in this function)
glut.c:1339: `GLUT_KEY_F4' undeclared (first use in this function)
glut.c:1340: `GLUT_KEY_F5' undeclared (first use in this function)
glut.c:1341: `GLUT_KEY_F6' undeclared (first use in this function)
glut.c:1342: `GLUT_KEY_F7' undeclared (first use in this function)
glut.c:1343: `GLUT_KEY_F8' undeclared (first use in this function)
glut.c:1344: `GLUT_KEY_F9' undeclared (first use in this function)
glut.c:1345: `GLUT_KEY_F10' undeclared (first use in this function)
glut.c:1346: `GLUT_KEY_F11' undeclared (first use in this function)
glut.c:1347: `GLUT_KEY_F12' undeclared (first use in this function)
glut.c:1348: `GLUT_KEY_LEFT' undeclared (first use in this function)
glut.c:1349: `GLUT_KEY_UP' undeclared (first use in this function)
glut.c:1350: `GLUT_KEY_RIGHT' undeclared (first use in this function)
glut.c:1351: `GLUT_KEY_DOWN' undeclared (first use in this function)
glut.c:1352: `GLUT_KEY_PAGE_UP' undeclared (first use in this function)
glut.c:1353: `GLUT_KEY_PAGE_DOWN' undeclared (first use in this function)
glut.c:1354: `GLUT_KEY_HOME' undeclared (first use in this function)
glut.c:1355: `GLUT_KEY_END' undeclared (first use in this function)
glut.c:1356: `GLUT_KEY_INSERT' undeclared (first use in this function)
glut.c:1357: `GLUT_LEFT' undeclared (first use in this function)
glut.c:1358: `GLUT_ENTERED' undeclared (first use in this function)
glut.c:1359: `GLUT_MENU_NOT_IN_USE' undeclared (first use in this 
function)
glut.c:1360: `GLUT_MENU_IN_USE' undeclared (first use in this function)
glut.c:1361: `GLUT_NOT_VISIBLE' undeclared (first use in this function)
glut.c:1362: `GLUT_VISIBLE' undeclared (first use in this function)
glut.c:1363: `GLUT_HIDDEN' undeclared (first use in this function)
glut.c:1364: `GLUT_FULLY_RETAINED' undeclared (first use in this 
function)
glut.c:1365: `GLUT_PARTIALLY_RETAINED' undeclared (first use in this 
function)
glut.c:1366: `GLUT_FULLY_COVERED' undeclared (first use in this function)
glut.c:1367: `GLUT_RED' undeclared (first use in this function)
glut.c:1368: `GLUT_GREEN' undeclared (first use in this function)
glut.c:1369: `GLUT_BLUE' undeclared (first use in this function)
glut.c:1370: `GLUT_WINDOW_X' undeclared (first use in this function)
glut.c:1371: `GLUT_WINDOW_Y' undeclared (first use in this function)
glut.c:1372: `GLUT_WINDOW_WIDTH' undeclared (first use in this function)
glut.c:1373: `GLUT_WINDOW_HEIGHT' undeclared (first use in this function)
glut.c:1374: `GLUT_WINDOW_BUFFER_SIZE' undeclared (first use in this 
function)
glut.c:1375: `GLUT_WINDOW_STENCIL_SIZE' undeclared (first use in this 
function)
glut.c:1376: `GLUT_WINDOW_DEPTH_SIZE' undeclared (first use in this 
function)
glut.c:1377: `GLUT_WINDOW_RED_SIZE' undeclared (first use in this 
function)
glut.c:1378: `GLUT_WINDOW_GREEN_SIZE' undeclared (first use in this 
function)
glut.c:1379: `GLUT_WINDOW_BLUE_SIZE' undeclared (first use in this 
function)
glut.c:1380: `GLUT_WINDOW_ALPHA_SIZE' undeclared (first use in this 
function)
glut.c:1381: `GLUT_WINDOW_ACCUM_RED_SIZE' undeclared (first use in this 
function)
glut.c:1382: `GLUT_WINDOW_ACCUM_GREEN_SIZE' undeclared (first use in 
this function)
glut.c:1383: `GLUT_WINDOW_ACCUM_BLUE_SIZE' undeclared (first use in this 
function)
glut.c:1384: `GLUT_WINDOW_ACCUM_ALPHA_SIZE' undeclared (first use in 
this function)
glut.c:1385: `GLUT_WINDOW_DOUBLEBUFFER' undeclared (first use in this 
function)
glut.c:1386: `GLUT_WINDOW_RGBA' undeclared (first use in this function)
glut.c:1387: `GLUT_WINDOW_PARENT' undeclared (first use in this function)
glut.c:1388: `GLUT_WINDOW_NUM_CHILDREN' undeclared (first use in this 
function)
glut.c:1389: `GLUT_WINDOW_COLORMAP_SIZE' undeclared (first use in this 
function)
glut.c:1390: `GLUT_WINDOW_NUM_SAMPLES' undeclared (first use in this 
function)
glut.c:1391: `GLUT_WINDOW_STEREO' undeclared (first use in this function)
glut.c:1392: `GLUT_WINDOW_CURSOR' undeclared (first use in this function)
glut.c:1393: `GLUT_SCREEN_WIDTH' undeclared (first use in this function)
glut.c:1394: `GLUT_SCREEN_HEIGHT' undeclared (first use in this function)
glut.c:1395: `GLUT_SCREEN_WIDTH_MM' undeclared (first use in this 
function)
glut.c:1396: `GLUT_SCREEN_HEIGHT_MM' undeclared (first use in this 
function)
glut.c:1397: `GLUT_MENU_NUM_ITEMS' undeclared (first use in this 
function)
glut.c:1398: `GLUT_DISPLAY_MODE_POSSIBLE' undeclared (first use in this 
function)
glut.c:1399: `GLUT_INIT_WINDOW_X' undeclared (first use in this function)
glut.c:1400: `GLUT_INIT_WINDOW_Y' undeclared (first use in this function)
glut.c:1401: `GLUT_INIT_WINDOW_WIDTH' undeclared (first use in this 
function)
glut.c:1402: `GLUT_INIT_WINDOW_HEIGHT' undeclared (first use in this 
function)
glut.c:1403: `GLUT_INIT_DISPLAY_MODE' undeclared (first use in this 
function)
glut.c:1404: `GLUT_ELAPSED_TIME' undeclared (first use in this function)
glut.c:1405: `GLUT_HAS_KEYBOARD' undeclared (first use in this function)
glut.c:1406: `GLUT_HAS_MOUSE' undeclared (first use in this function)
glut.c:1407: `GLUT_HAS_SPACEBALL' undeclared (first use in this function)
glut.c:1408: `GLUT_HAS_DIAL_AND_BUTTON_BOX' undeclared (first use in 
this function)
glut.c:1409: `GLUT_HAS_TABLET' undeclared (first use in this function)
glut.c:1410: `GLUT_NUM_MOUSE_BUTTONS' undeclared (first use in this 
function)
glut.c:1411: `GLUT_NUM_SPACEBALL_BUTTONS' undeclared (first use in this 
function)
glut.c:1412: `GLUT_NUM_BUTTON_BOX_BUTTONS' undeclared (first use in this 
function)
glut.c:1413: `GLUT_NUM_DIALS' undeclared (first use in this function)
glut.c:1414: `GLUT_NUM_TABLET_BUTTONS' undeclared (first use in this 
function)
glut.c:1415: `GLUT_OVERLAY_POSSIBLE' undeclared (first use in this 
function)
glut.c:1416: `GLUT_LAYER_IN_USE' undeclared (first use in this function)
glut.c:1417: `GLUT_HAS_OVERLAY' undeclared (first use in this function)
glut.c:1418: `GLUT_TRANSPARENT_INDEX' undeclared (first use in this 
function)
glut.c:1419: `GLUT_NORMAL_DAMAGED' undeclared (first use in this 
function)
glut.c:1420: `GLUT_OVERLAY_DAMAGED' undeclared (first use in this 
function)
glut.c:1421: `GLUT_VIDEO_RESIZE_POSSIBLE' undeclared (first use in this 
function)
glut.c:1422: `GLUT_VIDEO_RESIZE_IN_USE' undeclared (first use in this 
function)
glut.c:1423: `GLUT_VIDEO_RESIZE_X_DELTA' undeclared (first use in this 
function)
glut.c:1424: `GLUT_VIDEO_RESIZE_Y_DELTA' undeclared (first use in this 
function)
glut.c:1425: `GLUT_VIDEO_RESIZE_WIDTH_DELTA' undeclared (first use in 
this function)
glut.c:1426: `GLUT_VIDEO_RESIZE_HEIGHT_DELTA' undeclared (first use in 
this function)
glut.c:1427: `GLUT_VIDEO_RESIZE_X' undeclared (first use in this 
function)
glut.c:1428: `GLUT_VIDEO_RESIZE_Y' undeclared (first use in this 
function)
glut.c:1429: `GLUT_VIDEO_RESIZE_WIDTH' undeclared (first use in this 
function)
glut.c:1430: `GLUT_VIDEO_RESIZE_HEIGHT' undeclared (first use in this 
function)
glut.c:1431: `GLUT_NORMAL' undeclared (first use in this function)
glut.c:1432: `GLUT_OVERLAY' undeclared (first use in this function)
glut.c:1433: `GLUT_ACTIVE_SHIFT' undeclared (first use in this function)
glut.c:1434: `GLUT_ACTIVE_CTRL' undeclared (first use in this function)
glut.c:1435: `GLUT_ACTIVE_ALT' undeclared (first use in this function)
glut.c:1436: `GLUT_CURSOR_RIGHT_ARROW' undeclared (first use in this 
function)
glut.c:1437: `GLUT_CURSOR_LEFT_ARROW' undeclared (first use in this 
function)
glut.c:1438: `GLUT_CURSOR_INFO' undeclared (first use in this function)
glut.c:1439: `GLUT_CURSOR_DESTROY' undeclared (first use in this 
function)
glut.c:1440: `GLUT_CURSOR_HELP' undeclared (first use in this function)
glut.c:1441: `GLUT_CURSOR_CYCLE' undeclared (first use in this function)
glut.c:1442: `GLUT_CURSOR_SPRAY' undeclared (first use in this function)
glut.c:1443: `GLUT_CURSOR_WAIT' undeclared (first use in this function)
glut.c:1444: `GLUT_CURSOR_TEXT' undeclared (first use in this function)
glut.c:1445: `GLUT_CURSOR_CROSSHAIR' undeclared (first use in this 
function)
glut.c:1446: `GLUT_CURSOR_UP_DOWN' undeclared (first use in this 
function)
glut.c:1447: `GLUT_CURSOR_LEFT_RIGHT' undeclared (first use in this 
function)
glut.c:1448: `GLUT_CURSOR_TOP_SIDE' undeclared (first use in this 
function)
glut.c:1449: `GLUT_CURSOR_BOTTOM_SIDE' undeclared (first use in this 
function)
glut.c:1450: `GLUT_CURSOR_LEFT_SIDE' undeclared (first use in this 
function)
glut.c:1451: `GLUT_CURSOR_RIGHT_SIDE' undeclared (first use in this 
function)
glut.c:1452: `GLUT_CURSOR_TOP_LEFT_CORNER' undeclared (first use in this 
function)
glut.c:1453: `GLUT_CURSOR_TOP_RIGHT_CORNER' undeclared (first use in 
this function)
glut.c:1454: `GLUT_CURSOR_BOTTOM_RIGHT_CORNER' undeclared (first use in 
this function)
glut.c:1455: `GLUT_CURSOR_BOTTOM_LEFT_CORNER' undeclared (first use in 
this function)
glut.c:1456: `GLUT_CURSOR_INHERIT' undeclared (first use in this 
function)
glut.c:1457: `GLUT_CURSOR_NONE' undeclared (first use in this function)
glut.c:1458: `GLUT_CURSOR_FULL_CROSSHAIR' undeclared (first use in this 
function)
glut.c: At top level:
glut.c:158: warning: `glut_SpecialFuncCallback' used but never defined
glut.c:159: warning: `glut_SpaceballMotionFuncCallback' used but never 
defined
glut.c:160: warning: `glut_SpaceballRotateFuncCallback' used but never 
defined
glut.c:161: warning: `glut_SpaceballButtonFuncCallback' used but never 
defined
glut.c:162: warning: `glut_ButtonBoxFuncCallback' used but never defined
glut.c:163: warning: `glut_DialsFuncCallback' used but never defined
glut.c:164: warning: `glut_TabletMotionFuncCallback' used but never 
defined
glut.c:165: warning: `glut_TabletButtonFuncCallback' used but never 
defined
glut.c:169: warning: `glut_OverlayDisplayFuncCallback' used but never 
defined
glut.c:170: warning: `glut_WindowStatusFuncCallback' used but never 
defined
make[1]: *** [glut.o] Error 1
make: *** [glut.bundle] Error 2