Having trouble getting GLEW to work
I have installed GLEW to System32, and VCDir/lib and VCDir/include directories. So the linker should not have any issues finding the necessary bits of GLEW. The trouble I am having though is that the following code:

    void foo()
    {
    	Uint32 *vboId;
    
    	glGenBuffers(1, &vboId);
    }

Gives me the following error:

    unresolved external symbol __imp____glewGenBuffers

This error was the entire reason I decided to install GLEW. See: http://stackoverflow.com/questions/6969599/unresolved-external-symbol-glgenbuffers-error

In addition to this error, there are a few warnings that are a bit concerning:

    Warning	1	warning C4028: formal parameter 3 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4855	1	Prototek
    Warning	2	warning C4028: formal parameter 3 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4857	1	Prototek
    Warning	3	warning C4028: formal parameter 2 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4859	1	Prototek
    Warning	4	warning C4028: formal parameter 2 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4861	1	Prototek
    Warning	5	warning C4028: formal parameter 3 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4868	1	Prototek
    Warning	6	warning C4028: formal parameter 3 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4869	1	Prototek

Also, is it a good idea to simply install SDL to my VC inc and lib and System32 directories as I have done for GLEW?

My #include's at the top of my file look like this:

    #include <stdio.h>
    #include <glew.h>
    #include "sdl.h"
    #include "sdl_opengl.h"
    #include <gl/GLU.h>
    #include <gl/GL.h>

But in case it is needed, here is the entire body of code:

    #include <stdio.h>
    #include <glew.h>
    #include "sdl.h"
    #include "sdl_opengl.h"
    #include <gl/GLU.h>
    #include <gl/GL.h>
    
    Uint32 loadTexture(char* fileName)
    {
    	Uint32 id;
    	SDL_Surface *img = NULL;
    
    	//load into memory using SDL
    	img = SDL_LoadBMP(fileName);
    	//generate an id for this texture
    	glGenTextures(1, &id);
    	//use this texture
    	glBindTexture(GL_TEXTURE_2D, id);
    	//load the texture into video memory via OpenGL
    	glTexImage2D(
    		GL_TEXTURE_2D,
    		0,
    		GL_RGB,
    		img->w,
    		img->h,
    		0,
    		GL_BGR,
    		GL_UNSIGNED_BYTE,
    		img->pixels
    		);
    
    	//set mip map settings
    	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
    
    	SDL_FreeSurface(img);
    
    	return id;
    }
    
    Uint32 tex;
    
    void init()
    {
    	glClearColor(0.0, 0.0, 0.0, 1.0);
    	glMatrixMode(GL_PROJECTION);
    	glLoadIdentity();
    	glOrtho(0.0, 1.0, 1.0, 0.0, -1.0, 1.0);
    	glMatrixMode(GL_MODELVIEW);
    	glEnable(GL_TEXTURE_2D);
    
    	tex = loadTexture("fireball.bmp");
    }
    void foo()
    {
    	//Uint32 *vboId;
    
    	//glGenBuffers(1, &vboId);
    }
    void display()
    {
    	glClear(GL_COLOR_BUFFER_BIT);
    	glLoadIdentity();
    
    	glBindTexture(GL_TEXTURE_2D, tex);
    
    	glBegin(GL_QUADS);
    	glTexCoord2f(0.5, 0.5);
    	glVertex3f(0.25, 0.25, 0.0);
    
    
    	glTexCoord2f(1.0, 0.5);
    	glVertex3f(0.5, 0.25, 0.0);
    
    
    	glTexCoord2f(1.0, 1.0);
    	glVertex3f(0.5, 0.5, 0.0);
    
    
    	glTexCoord2f(0.5, 1.0);
    	glVertex3f(0.25, 0.5, 0.0);
    	glEnd();
    }
    
    int main()
    {
    	Uint32 isRunning = 1;
    	SDL_Surface *screen = NULL;
    	SDL_Event event;
    	Uint32 start;
    	Uint32 FPS = 30;
    
    	SDL_Init(SDL_INIT_EVERYTHING);
    
    	screen = SDL_SetVideoMode(640, 480, 32, SDL_OPENGL);
    
    	init();
    
    	while(isRunning)
    	{
    		start = SDL_GetTicks();
    
    		while(SDL_PollEvent(&event))
    		{
    			switch(event.type)
    			{
    				case SDL_QUIT: isRunning = 0; break;
    			}
    		}
    
    		display();
    
    		SDL_GL_SwapBuffers();
    
    		if(1000 / FPS > SDL_GetTicks() - start)
    		{
    			SDL_Delay(1000 / FPS - (SDL_GetTicks() - start));
    		}
    	}
    
    	SDL_Quit();
    
    	return(0);
    }
Having trouble getting GLEW to work
===

I have installed GLEW to System32, and VCDir/lib and VCDir/include directories. So the linker should not have any issues finding the necessary bits of GLEW. The trouble I am having though is that the following code:

    void foo()
    {
    	Uint32 *vboId;
    
    	glGenBuffers(1, &vboId);
    }

Gives me the following error:

    unresolved external symbol __imp____glewGenBuffers

This error was the entire reason I decided to install GLEW. See: http://stackoverflow.com/questions/6969599/unresolved-external-symbol-glgenbuffers-error

In addition to this error, there are a few warnings that are a bit concerning:

    Warning	1	warning C4028: formal parameter 3 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4855	1	Prototek
    Warning	2	warning C4028: formal parameter 3 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4857	1	Prototek
    Warning	3	warning C4028: formal parameter 2 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4859	1	Prototek
    Warning	4	warning C4028: formal parameter 2 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4861	1	Prototek
    Warning	5	warning C4028: formal parameter 3 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4868	1	Prototek
    Warning	6	warning C4028: formal parameter 3 different from declaration	c:\sdl-1.2.14\include\sdl_opengl.h	4869	1	Prototek

Also, is it a good idea to simply install SDL to my VC inc and lib and System32 directories as I have done for GLEW?

My #include's at the top of my file look like this:

    #include <stdio.h>
    #include <glew.h>
    #include "sdl.h"
    #include "sdl_opengl.h"
    #include <gl/GLU.h>
    #include <gl/GL.h>

But in case it is needed, here is the entire body of code:

    #include <stdio.h>
    #include <glew.h>
    #include "sdl.h"
    #include "sdl_opengl.h"
    #include <gl/GLU.h>
    #include <gl/GL.h>
    
    Uint32 loadTexture(char* fileName)
    {
    	Uint32 id;
    	SDL_Surface *img = NULL;
    
    	//load into memory using SDL
    	img = SDL_LoadBMP(fileName);
    	//generate an id for this texture
    	glGenTextures(1, &id);
    	//use this texture
    	glBindTexture(GL_TEXTURE_2D, id);
    	//load the texture into video memory via OpenGL
    	glTexImage2D(
    		GL_TEXTURE_2D,
    		0,
    		GL_RGB,
    		img->w,
    		img->h,
    		0,
    		GL_BGR,
    		GL_UNSIGNED_BYTE,
    		img->pixels
    		);
    
    	//set mip map settings
    	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
    	glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
    
    	SDL_FreeSurface(img);
    
    	return id;
    }
    
    Uint32 tex;
    
    void init()
    {
    	glClearColor(0.0, 0.0, 0.0, 1.0);
    	glMatrixMode(GL_PROJECTION);
    	glLoadIdentity();
    	glOrtho(0.0, 1.0, 1.0, 0.0, -1.0, 1.0);
    	glMatrixMode(GL_MODELVIEW);
    	glEnable(GL_TEXTURE_2D);
    
    	tex = loadTexture("fireball.bmp");
    }
    void foo()
    {
    	//Uint32 *vboId;
    
    	//glGenBuffers(1, &vboId);
    }
    void display()
    {
    	glClear(GL_COLOR_BUFFER_BIT);
    	glLoadIdentity();
    
    	glBindTexture(GL_TEXTURE_2D, tex);
    
    	glBegin(GL_QUADS);
    	glTexCoord2f(0.5, 0.5);
    	glVertex3f(0.25, 0.25, 0.0);
    
    
    	glTexCoord2f(1.0, 0.5);
    	glVertex3f(0.5, 0.25, 0.0);
    
    
    	glTexCoord2f(1.0, 1.0);
    	glVertex3f(0.5, 0.5, 0.0);
    
    
    	glTexCoord2f(0.5, 1.0);
    	glVertex3f(0.25, 0.5, 0.0);
    	glEnd();
    }
    
    int main()
    {
    	Uint32 isRunning = 1;
    	SDL_Surface *screen = NULL;
    	SDL_Event event;
    	Uint32 start;
    	Uint32 FPS = 30;
    
    	SDL_Init(SDL_INIT_EVERYTHING);
    
    	screen = SDL_SetVideoMode(640, 480, 32, SDL_OPENGL);
    
    	init();
    
    	while(isRunning)
    	{
    		start = SDL_GetTicks();
    
    		while(SDL_PollEvent(&event))
    		{
    			switch(event.type)
    			{
    				case SDL_QUIT: isRunning = 0; break;
    			}
    		}
    
    		display();
    
    		SDL_GL_SwapBuffers();
    
    		if(1000 / FPS > SDL_GetTicks() - start)
    		{
    			SDL_Delay(1000 / FPS - (SDL_GetTicks() - start));
    		}
    	}
    
    	SDL_Quit();
    
    	return(0);
    }