diff -Naur ./build/make/Makefile.vars ./build/make/Makefile.vars
--- ./build/make/Makefile.vars	2005-07-08 16:31:55.000000000 -0500
+++ ./build/make/Makefile.vars	2006-05-11 23:37:46.000000000 -0500
@@ -73,9 +73,9 @@
 # NOTE: since we are building DLL's, need POSITION INDEPENDENT code
   COMPILER = g++
   COMPILE_FLAGS_NDEBUG = -DAR_USE_LINUX -c -fPIC -O2 -Wall -W \
-    -Wpointer-arith -march=i686 $(SZG_OPT_FLAGS)
+    -Wpointer-arith -march=k8 $(SZG_OPT_FLAGS)
   COMPILE_FLAGS_DEBUG = -DAR_USE_LINUX -c -fPIC -g -Wall -W \
-    -Wpointer-arith -march=i686 $(SZG_OPT_FLAGS)
+    -Wpointer-arith -march=k8 $(SZG_OPT_FLAGS)
   # Do NOT use ":=" in defining COMPILE_FLAGS, since this allows more
   # flexibility in where SZG_OPT_FLAGS is defined.
   ifneq ($(strip $(SZGDEBUG)),TRUE)
@@ -182,9 +182,9 @@
 
 # compilation
   COMPILER = c++
-  COMPILE_FLAGS_NDEBUG = -DAR_BIG_ENDIAN -DAR_USE_DARWIN $(SZG_OPT_FLAGS) \
+  COMPILE_FLAGS_NDEBUG = -DAR_USE_DARWIN $(SZG_OPT_FLAGS) \
     -fno-common -fPIC -O2 -c
-  COMPILE_FLAGS_DEBUG = -DAR_BIG_ENDIAN -DAR_USE_DARWIN $(SZG_OPT_FLAGS) \
+  COMPILE_FLAGS_DEBUG = -DAR_USE_DARWIN $(SZG_OPT_FLAGS) \
     -fno-common -fPIC -c -g
   ifneq ($(strip $(SZGDEBUG)),TRUE)
     COMPILE_FLAGS = $(COMPILE_FLAGS_NDEBUG)
diff -Naur ./src/drivers/arSharedMemDriver.cpp ./src/drivers/arSharedMemDriver.cpp
--- ./src/drivers/arSharedMemDriver.cpp	2006-01-18 18:50:53.000000000 -0600
+++ ./src/drivers/arSharedMemDriver.cpp	2006-05-11 23:38:42.000000000 -0500
@@ -103,12 +103,12 @@
     return false;
   }
   _shmFoB = shmat(idFoB, NULL, 0);
-  if ((int)_shmFoB == -1){
+  if (_shmFoB == (void *)-1){
     perror("shmat failed for Flock of Birds");
     return false;
   }
   _shmWand = shmat(idWand, NULL, 0);
-  if ((int)_shmWand == -1){
+  if (_shmWand == (void *)-1){
     perror("shmat failed for wand");
     return false;
   }
diff -Naur ./src/drivers/arSharedMemDriver.h ./src/drivers/arSharedMemDriver.h
--- ./src/drivers/arSharedMemDriver.h	2006-01-18 18:50:53.000000000 -0600
+++ ./src/drivers/arSharedMemDriver.h	2006-05-11 23:39:02.000000000 -0500
@@ -13,6 +13,8 @@
 
 /// Driver for shared-memory segments holding mocap data from VRCO trackd.
 
+void ar_ShmDriverDataTask(void*);
+
 class SZG_CALL arSharedMemDriver: public arInputSource {
     friend void ar_ShmDriverDataTask(void*);
   public:
diff -Naur ./src/graphics/arGraphicsClient.h ./src/graphics/arGraphicsClient.h
--- ./src/graphics/arGraphicsClient.h	2006-01-18 18:50:53.000000000 -0600
+++ ./src/graphics/arGraphicsClient.h	2006-05-11 23:39:41.000000000 -0500
@@ -22,6 +22,8 @@
 /// using the SZG_GEOMETRY service
 /// and draws OpenGL scenes from an arGraphicsDatabase.
 
+bool ar_graphicsClientPostSyncCallback(void*);
+
 class SZG_CALL arGraphicsClient{
   // Needs assignment operator and copy constructor, for pointer members.
   friend bool
diff -Naur ./src/graphics/arGraphicsWindow.cpp ./src/graphics/arGraphicsWindow.cpp
--- ./src/graphics/arGraphicsWindow.cpp	2006-01-18 18:50:53.000000000 -0600
+++ ./src/graphics/arGraphicsWindow.cpp	2006-05-11 23:40:06.000000000 -0500
@@ -379,7 +379,7 @@
   // NOTE: in what follows, we will be changing the viewport. Its current
   // extent must be saved so that it can subsequently be restored.
   int params[4];
-  glGetIntegerv(GL_VIEWPORT, params);
+  glGetIntegerv(GL_VIEWPORT, (GLint *)params);
 
   std::vector<arViewport>::iterator i;
   for (i=_viewportVector.begin(); i != _viewportVector.end(); ++i){
diff -Naur ./src/graphics/arGUIWindow.cpp ./src/graphics/arGUIWindow.cpp
--- ./src/graphics/arGUIWindow.cpp	2005-12-28 17:27:04.000000000 -0600
+++ ./src/graphics/arGUIWindow.cpp	2006-05-11 23:53:21.000000000 -0500
@@ -980,7 +980,10 @@
   _visible = true;
 
   setCursor( _windowConfig.getCursor() );
-
+  
+  int jk = 0;
+  glutInit(&jk, NULL);
+  
   return 0;
 }
 
diff -Naur ./src/graphics/arTexture.cpp ./src/graphics/arTexture.cpp
--- ./src/graphics/arTexture.cpp	2006-01-18 18:50:53.000000000 -0600
+++ ./src/graphics/arTexture.cpp	2006-05-11 23:43:37.000000000 -0500
@@ -175,7 +175,7 @@
 #ifdef AR_USE_WIN_32
   ARint64 threadID = GetCurrentThreadId();
 #else
-  ARint64 threadID = pthread_self();
+  ARint64 threadID = (ARint64)pthread_self();
 #endif
   // Has it been used so far?
   map<ARint64,GLuint,less<ARint64> >::iterator i = _texNameMap.find(threadID);
diff -Naur ./src/graphics/arViewport.cpp ./src/graphics/arViewport.cpp
--- ./src/graphics/arViewport.cpp	2006-01-18 18:50:53.000000000 -0600
+++ ./src/graphics/arViewport.cpp	2006-05-11 23:45:04.000000000 -0500
@@ -163,7 +163,7 @@
   // get the window size and set the viewport based on that and the
   // proportions stored herein.
   int params[4] = {0};
-  glGetIntegerv( GL_VIEWPORT, params );
+  glGetIntegerv( GL_VIEWPORT, (GLint *)params );
 
   // there's a whole complicated song and dance to ensure that, for instance,
   // viewports of (0,0,0.5,1) and (0.5,0,0.5,1) on a window of size 1024x768
diff -Naur ./src/language/arLogStream.cpp ./src/language/arLogStream.cpp
--- ./src/language/arLogStream.cpp	2006-01-18 18:50:53.000000000 -0600
+++ ./src/language/arLogStream.cpp	2006-05-11 23:46:02.000000000 -0500
@@ -192,7 +192,7 @@
   _preAppend();
   unsigned int current = 0;
   while(current < s.length()){
-    unsigned int next = s.find('\n', current);
+    string::size_type next = s.find('\n', current);
     if (next != string::npos){
       _buffer << s.substr(current, next-current);
       _postAppend(true);
diff -Naur ./src/language/arSTLalgo.h ./src/language/arSTLalgo.h
--- ./src/language/arSTLalgo.h	2004-11-22 19:36:08.000000000 -0600
+++ ./src/language/arSTLalgo.h	2006-05-11 23:46:20.000000000 -0500
@@ -5,6 +5,7 @@
 #include <algo.h>
 #else
 #include <algorithm>
+#include <numeric>
 #endif
 
 #endif        //  #ifndefARSTLALGO_H
diff -Naur ./src/phleet/szgd.cpp ./src/phleet/szgd.cpp
--- ./src/phleet/szgd.cpp	2006-01-25 14:32:17.000000000 -0600
+++ ./src/phleet/szgd.cpp	2006-05-11 23:46:56.000000000 -0500
@@ -295,7 +295,7 @@
   ar_scrubPath(path);
 #ifndef AR_USE_WIN_32
   // szg paths use Win32 ';' separator.  In Unix, change to ':'
-  unsigned int pos;
+  string::size_type pos;
   while ((pos = path.find(";")) != string::npos)
     path.replace( pos, 1, ":" );
 #endif
diff -Naur ./src/sound/arSoundClient.h ./src/sound/arSoundClient.h
--- ./src/sound/arSoundClient.h	2006-01-18 18:50:54.000000000 -0600
+++ ./src/sound/arSoundClient.h	2006-05-11 23:47:55.000000000 -0500
@@ -25,6 +25,11 @@
 /// looks for soundfiles in SZG_SOUND/path, and
 /// renders the arSoundDatabase which arSoundServer and arSoundClients share.
 
+bool ar_soundClientConsumptionCallback(void*, ARchar*);
+bool ar_soundClientActionCallback(void*);
+bool ar_soundClientNullCallback(void*);
+bool ar_soundClientPostSyncCallback(void*);
+
 class SZG_CALL arSoundClient{
   // Needs assignment operator and copy constructor, for pointer members.
   // Probably should be a singleton class, though.
