🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: comp.graphics.api.opengl
6 messages
6 total messages Started by Paul Richards Sun, 30 May 1999 00:00
Mesa + 3DFX
#45
Author: Paul Richards
Date: Sun, 30 May 1999 00:00
78 lines
5009 bytes
Hi,
I built Mesa ok and all the examples work fine with the 3DFX card.  I
tried to build one of the examples myself to see if I could do it.  I
make a project in MS VC++ 6 and added to it the files mesa\3dfx\demos\
fire.c and image.c.  I also linked in these libraries: kernel32.lib
user32.lib gdi32.lib opengl32.lib glu32.lib glut32.lib glide2x.lib
winmm.lib.

They compile ok (with one or two warnings mind) but I get several linker
errors:
Linking...
fire.obj : error LNK2001: unresolved external symbol _glutMainLoop
fire.obj : error LNK2001: unresolved external symbol _glutReshapeFunc
fire.obj : error LNK2001: unresolved external symbol _glutIdleFunc
fire.obj : error LNK2001: unresolved external symbol _glutDisplayFunc
fire.obj : error LNK2001: unresolved external symbol _glutSpecialFunc
fire.obj : error LNK2001: unresolved external symbol _glutKeyboardFunc
fire.obj : error LNK2001: unresolved external symbol _glFogf
fire.obj : error LNK2001: unresolved external symbol _glFogfv
fire.obj : error LNK2001: unresolved external symbol _glFogi
fire.obj : error LNK2001: unresolved external symbol _glBlendFunc
fire.obj : error LNK2001: unresolved external symbol _glEnable
fire.obj : error LNK2001: unresolved external symbol _glShadeModel
fire.obj : error LNK2001: unresolved external symbol _glutCreateWindow
fire.obj : error LNK2001: unresolved external symbol
_glutInitDisplayMode
fire.obj : error LNK2001: unresolved external symbol _glutInit
fire.obj : error LNK2001: unresolved external symbol _glutInitWindowSize
fire.obj : error LNK2001: unresolved external symbol
_glutInitWindowPosition
fire.obj : error LNK2001: unresolved external symbol _gluPerspective
fire.obj : error LNK2001: unresolved external symbol _glLoadIdentity
fire.obj : error LNK2001: unresolved external symbol _glMatrixMode
fire.obj : error LNK2001: unresolved external symbol _glViewport
fire.obj : error LNK2001: unresolved external symbol _glutSwapBuffers
fire.obj : error LNK2001: unresolved external symbol _glPopMatrix
fire.obj : error LNK2001: unresolved external symbol _glRasterPos2i
fire.obj : error LNK2001: unresolved external symbol _glColor3f
fire.obj : error LNK2001: unresolved external symbol _glOrtho
fire.obj : error LNK2001: unresolved external symbol _glColor4fv
fire.obj : error LNK2001: unresolved external symbol _glVertex3f
fire.obj : error LNK2001: unresolved external symbol _glAlphaFunc
fire.obj : error LNK2001: unresolved external symbol _glEnd
fire.obj : error LNK2001: unresolved external symbol _glVertex3fv
fire.obj : error LNK2001: unresolved external symbol _glTexCoord2fv
fire.obj : error LNK2001: unresolved external symbol _glBegin
fire.obj : error LNK2001: unresolved external symbol _glBindTexture
fire.obj : error LNK2001: unresolved external symbol _glColor4f
fire.obj : error LNK2001: unresolved external symbol _gluLookAt
fire.obj : error LNK2001: unresolved external symbol _glPushMatrix
fire.obj : error LNK2001: unresolved external symbol _glClear
fire.obj : error LNK2001: unresolved external symbol _glClearColor
fire.obj : error LNK2001: unresolved external symbol _glDepthMask
fire.obj : error LNK2001: unresolved external symbol _glDisable
fire.obj : error LNK2001: unresolved external symbol _glTexCoord2f
fire.obj : error LNK2001: unresolved external symbol
_glutBitmapCharacter
fire.obj : error LNK2001: unresolved external symbol _glRecti
fire.obj : error LNK2001: unresolved external symbol __imp__joyGetPos
fire.obj : error LNK2001: unresolved external symbol _glTexEnvf
fire.obj : error LNK2001: unresolved external symbol _glTexParameterf
fire.obj : error LNK2001: unresolved external symbol _gluErrorString
fire.obj : error LNK2001: unresolved external symbol _gluBuild2DMipmaps
fire.obj : error LNK2001: unresolved external symbol _glPixelStorei
fire.obj : error LNK2001: unresolved external symbol _glGenTextures
Debug/fire.exe : fatal error LNK1120: 51 unresolved externals
Error executing link.exe.

fire.exe - 52 error(s), 0 warning(s)

I have copied the include/lib files into the VC ones for both Mesa and
the Glide2x SDK.  I'm using Win95.

TIA
-- 
Paul Richards (AKA Pauldoo)
mailto:paul@dunvegan1.demon.co.uk
http://www.dunvegan1.demon.co.uk/paul/
Re: Mesa + 3DFX
#46
Author: csbaker
Date: Sun, 30 May 1999 00:00
1 lines
810 bytes
try linking to just glut.lib ?
Re: Mesa + 3DFX
#47
Author: Paul Richards
Date: Mon, 31 May 1999 00:00
6 lines
1001 bytes
>try linking to just glut.lib ?
Glut32.lib?  Nope, a whole lot of linker errors still.
-- 
Paul Richards (AKA Pauldoo)
mailto:paul@dunvegan1.demon.co.uk
http://www.dunvegan1.demon.co.uk/paul/
Re: Mesa + 3DFX
#48
Author: Glenn Shoosmith
Date: Tue, 01 Jun 1999 00:00
25 lines
1840 bytes
Paul Richards <Paul@dunvegan1.demon.co.uk> wrote in message
news:fYtVlAA7wZU3EwX8@dunvegan1.demon.co.uk...
> Hi,
> I built Mesa ok and all the examples work fine with the 3DFX card.  I
> tried to build one of the examples myself to see if I could do it.  I
> make a project in MS VC++ 6 and added to it the files mesa\3dfx\demos\
> fire.c and image.c.  I also linked in these libraries: kernel32.lib
> user32.lib gdi32.lib opengl32.lib glu32.lib glut32.lib glide2x.lib
> winmm.lib.


Firstly..Why do you need to create projects, there are project already
in Mesa/win32/3dfx (or at least there are in mine)
and secondly, are you sure the new compiled libraries are
in your path statement.
Either add then in to the preoject settings or possibly better
is to copy them all into the vc/lib and vc/include
directories, (backing up anything you replace)
and put the Dll's in windows\system.
This way you won't have any problems accidently linking to the
old non mesa versions.
Not sure if that helps....hope it does :-)

Glenn
Re: Mesa + 3DFX
#49
Author: David Bucciarelli
Date: Tue, 01 Jun 1999 00:00
42 lines
2146 bytes
Paul Richards wrote:

> I built Mesa ok and all the examples work fine with the 3DFX card.  I
> tried to build one of the examples myself to see if I could do it.  I
> make a project in MS VC++ 6 and added to it the files mesa\3dfx\demos\
> fire.c and image.c.  I also linked in these libraries: kernel32.lib
> user32.lib gdi32.lib opengl32.lib glu32.lib glut32.lib glide2x.lib
> winmm.lib.
> 
> They compile ok (with one or two warnings mind) but I get several linker
> errors:
> Linking...
> fire.obj : error LNK2001: unresolved external symbol _glutMainLoop
[...]
> I have copied the include/lib files into the VC ones for both Mesa and
> the Glide2x SDK.  I'm using Win95.

I guess your using the wrong 'calling convetion'. You should change the
setting  to 'stdcall' in the 'Project settings-> C/C++ -> Code
generation -> Calling convetion'. This should fix your problem.

It is a "bug" in the gl.h (the function prototypes are wrong) included
in the Mesa. The latest sources available at Mesa CVS should not include
this bug.

BTW, the easiest way to use Mesa under Win is to link with the standard
Microsoft Opengl32.lib and to copy the Mesa DLLs in the directory where
you run your application (so it is also very easy to switch between Mesa
and system OpenGL, you have only to delete or copy the Mesa DLLs).

David

-- 

David Bucciarelli
humanware@tin.it

Humanware S.r.l.
Via delle Belle Torri 18, Pisa, Italy
Tel: +39-050-570633
Fax: +39-050-973270
WWW: http://www-hmw.caribel.pisa.it
Re: Mesa + 3DFX
#50
Author: Paul Richards
Date: Tue, 01 Jun 1999 00:00
122 lines
7101 bytes
David Bucciarelli writes,
>I guess your using the wrong 'calling convetion'. You should change the
>setting  to 'stdcall' in the 'Project settings-> C/C++ -> Code
>generation -> Calling convetion'. This should fix your problem.
Thanks, here's my new set of errors:

--------------------Configuration: teapot - Win32 Debug-----------------
---
Compiling...
teapot.c
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(125) :
warning C4005: 'WINGDIAPI' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\wingdi.h(2
1) : see previous definition of 'WINGDIAPI'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(126) :
warning C4005: 'APIENTRY' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
21) : see previous definition of 'APIENTRY'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(127) :
warning C4005: 'CALLBACK' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
18) : see previous definition of 'CALLBACK'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(128) :
warning C4005: 'WINAPI' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
19) : see previous definition of 'WINAPI'
c:\mesa\3dfx\demos\teapot.c(529) : warning C4007: 'main' : must be
'__cdecl'
c:\mesa\3dfx\demos\teapot.c(588) : error C2152: 'function' : pointers to
functions with different attributes
c:\mesa\3dfx\demos\teapot.c(588) : warning C4024: 'glutReshapeFunc' :
different types for formal and actual parameter 1
c:\mesa\3dfx\demos\teapot.c(589) : error C2152: 'function' : pointers to
functions with different attributes
c:\mesa\3dfx\demos\teapot.c(589) : warning C4024: 'glutDisplayFunc' :
different types for formal and actual parameter 1
c:\mesa\3dfx\demos\teapot.c(590) : error C2152: 'function' : pointers to
functions with different attributes
c:\mesa\3dfx\demos\teapot.c(590) : warning C4024: 'glutKeyboardFunc' :
different types for formal and actual parameter 1
c:\mesa\3dfx\demos\teapot.c(591) : error C2152: 'function' : pointers to
functions with different attributes
c:\mesa\3dfx\demos\teapot.c(591) : warning C4024: 'glutSpecialFunc' :
different types for formal and actual parameter 1
c:\mesa\3dfx\demos\teapot.c(592) : error C2152: 'function' : pointers to
functions with different attributes
c:\mesa\3dfx\demos\teapot.c(592) : warning C4024: 'glutIdleFunc' :
different types for formal and actual parameter 1
shadow.c
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(125) :
warning C4005: 'WINGDIAPI' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\wingdi.h(2
1) : see previous definition of 'WINGDIAPI'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(126) :
warning C4005: 'APIENTRY' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
21) : see previous definition of 'APIENTRY'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(127) :
warning C4005: 'CALLBACK' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
18) : see previous definition of 'CALLBACK'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(128) :
warning C4005: 'WINAPI' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
19) : see previous definition of 'WINAPI'
image.c
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(125) :
warning C4005: 'WINGDIAPI' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\wingdi.h(2
1) : see previous definition of 'WINGDIAPI'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(126) :
warning C4005: 'APIENTRY' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
21) : see previous definition of 'APIENTRY'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(127) :
warning C4005: 'CALLBACK' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
18) : see previous definition of 'CALLBACK'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(128) :
warning C4005: 'WINAPI' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
19) : see previous definition of 'WINAPI'
dteapot.c
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(125) :
warning C4005: 'WINGDIAPI' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\wingdi.h(2
1) : see previous definition of 'WINGDIAPI'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(126) :
warning C4005: 'APIENTRY' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
21) : see previous definition of 'APIENTRY'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(127) :
warning C4005: 'CALLBACK' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
18) : see previous definition of 'CALLBACK'
c:\program files\microsoft visual studio\vc98\include\gl\gl.h(128) :
warning C4005: 'WINAPI' : macro redefinition
        c:\program files\microsoft visual studio\vc98\include\windef.h(1
19) : see previous definition of 'WINAPI'
Error executing cl.exe.

teapot.exe - 5 error(s), 22 warning(s)

[I'm sorry for the word-wrap goosing that up a little]

>It is a "bug" in the gl.h (the function prototypes are wrong) included
>in the Mesa. The latest sources available at Mesa CVS should not include
>this bug.
I only got Mesa a few days ago...

>BTW, the easiest way to use Mesa under Win is to link with the standard
>Microsoft Opengl32.lib and to copy the Mesa DLLs in the directory where
>you run your application (so it is also very easy to switch between Mesa
>and system OpenGL, you have only to delete or copy the Mesa DLLs).
Well I did copy the Mesa opengl32.lib things into the VC lib folder.
Could this be causing the above probs?

(Linux never had this trouble, hmmmmph)
-- 
Paul Richards (AKA Pauldoo)
mailto:paul@dunvegan1.demon.co.uk
http://www.dunvegan1.demon.co.uk/paul/
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads