|
View:
New views
13 Messages
—
Rating Filter:
Alert me
|
|
|
Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008When I try to buld Mesa version 7.6 onto Win32 I get this error message:
Compiling... api_exec.c ..\..\..\..\src\mesa\main\api_exec.c(831) : error C2440: '=' : cannot convert from 'GLboolean (__cdecl *)(GLsync)' to 'GLboolean (__stdcall *)(GLsync)' ..\..\..\..\src\mesa\main\api_exec.c(832) : error C2440: '=' : cannot convert from 'void (__cdecl *)(GLsync)' to 'void (__stdcall *)(GLsync)' ..\..\..\..\src\mesa\main\api_exec.c(833) : error C2440: '=' : cannot convert from 'GLsync (__cdecl *)(GLenum,GLbitfield)' to 'GLsync (__stdcall *)(GLenum,GLbitfield)' ..\..\..\..\src\mesa\main\api_exec.c(834) : error C2440: '=' : cannot convert from 'GLenum (__cdecl *)(GLsync,GLbitfield,GLuint64)' to 'GLenum (__stdcall *)(GLsync,GLbitfield,GLuint64)' ..\..\..\..\src\mesa\main\api_exec.c(835) : error C2440: '=' : cannot convert from 'void (__cdecl *)(GLsync,GLbitfield,GLuint64)' to 'void (__stdcall *)(GLsync,GLbitfield,GLuint64)' ..\..\..\..\src\mesa\main\api_exec.c(837) : error C2440: '=' : cannot convert from 'void (__cdecl *)(GLsync,GLenum,GLsizei,GLsizei *,GLint *)' to 'void (__stdcall *)(GLsync,GLenum,GLsizei,GLsizei *,GLint *)' Creating browse information file... Microsoft Browse Information Maintenance Utility Version 8.00.50727 Copyright (C) Microsoft Corporation. All rights reserved. Microsoft Visual Studio 2005 Version 8.0.50727.42 (RTM.050727-4200) Microsoft .NET Framework Version 2.0.50727 Any idea? Thanks Delle |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008Any News?
:(
|
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008Delle <delle69@...> writes:
> Delle wrote: > > > > When I try to buld Mesa version 7.6 onto Win32 I get this error message: > > > > Compiling... > > api_exec.c > > ..\..\..\..\src\mesa\main\api_exec.c(831) : error C2440: '=' : cannot > > convert from 'GLboolean (__cdecl *)(GLsync)' to 'GLboolean (__stdcall > > *)(GLsync)' > > ..\..\..\..\src\mesa\main\api_exec.c(832) : error C2440: '=' : cannot > > convert from 'void (__cdecl *)(GLsync)' to 'void (__stdcall *)(GLsync)' > > ..\..\..\..\src\mesa\main\api_exec.c(833) : error C2440: '=' : cannot > > convert from 'GLsync (__cdecl *)(GLenum,GLbitfield)' to 'GLsync (__stdcall > > *)(GLenum,GLbitfield)' It looks like the calling convention is wrong. I think you can change the default calling convention in the MSVC project file; changing it to stdcall might fix this. api_exec.c or some other code included therein is probably explicitly setting the calling convention for these functions though. Try to track down where that happens and change it to stdcall. I'm sure a patch would be welcome, especially if you could identify why this started happening. Cheers, -tom ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@... https://lists.sourceforge.net/lists/listinfo/mesa3d-dev |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008On Mon, Nov 16, 2009 at 11:55 AM, tom fogal <tfogal@...> wrote:
> Delle <delle69@...> writes: >> Delle wrote: >> > >> > When I try to buld Mesa version 7.6 onto Win32 I get this error message: >> > >> > Compiling... >> > api_exec.c >> > ..\..\..\..\src\mesa\main\api_exec.c(831) : error C2440: '=' : cannot >> > convert from 'GLboolean (__cdecl *)(GLsync)' to 'GLboolean (__stdcall >> > *)(GLsync)' >> > ..\..\..\..\src\mesa\main\api_exec.c(832) : error C2440: '=' : cannot >> > convert from 'void (__cdecl *)(GLsync)' to 'void (__stdcall *)(GLsync)' >> > ..\..\..\..\src\mesa\main\api_exec.c(833) : error C2440: '=' : cannot >> > convert from 'GLsync (__cdecl *)(GLenum,GLbitfield)' to 'GLsync (__stdcall >> > *)(GLenum,GLbitfield)' > > It looks like the calling convention is wrong. > > I think you can change the default calling convention in the MSVC > project file; changing it to stdcall might fix this. > > api_exec.c or some other code included therein is probably explicitly > setting the calling convention for these functions though. Try to > track down where that happens and change it to stdcall. I'm sure a > patch would be welcome, especially if you could identify why this > started happening. This should be fixed as of commit e713a95c96e4af9d3b97ab8383fff3ccf98b012d on the 7.6 branch. -Brian ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@... https://lists.sourceforge.net/lists/listinfo/mesa3d-dev |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008I submitted a patch to Brian to make 7.6 compile on VS2005. I sent a copy of the patch to Delle today. I suspect that the fixes are in the current tip.
I think that the problem below was caused by new api calls being added without GL_APIENTRY in the function signature. The patch fixes that. Here are my notes on the patch: The changes are: windows/VC8/mesa/mesa/mesa. vcproj: Removed unneeded files from project list:
grammar.c grammar_crt.c vsnprintf.c Added files to project list: hash_table.[ch]
lex.yy.c with -D YY_NO_UNISTD_H program_parse_extra.cYY_USE_CONST _CRT_SECURE_NO_DEPRECATE _CRT_NONSTDC_NO_DEPRECATE program_parse_tab.[ch] with -D YYMALLOC=malloc prog_parameter_layout.[ch]YYFREE=free symbol_table.[ch] syncobj.[ch] syncobj.[ch]: Need to add GLAPIENTRY to six function signatures.
IsSync, DeleteSync, FenceSync, ClientWaitSync, WaitSync, GetSynciv get.c: Cast 1 to (GLint64) in three places for bitwise shifting (warning, but could be a latent bug). mesa.def:
Remove obsolete entry points _mesa_begin_query _mesa_buffer_data _mesa_buffer_get_subdata _mesa_buffer_map _mesa_buffer_subdata _mesa_buffer_unmap _mesa_delete_buffer_object _mesa_delete_query _mesa_end_query _mesa_new_buffer_object _mesa_new_query_object _mesa_wait_query On Mon, Nov 16, 2009 at 11:55 AM, tom fogal <tfogal@...> wrote:
------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@... https://lists.sourceforge.net/lists/listinfo/mesa3d-dev |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008Thank you guys for the response!
The Compile error has gone. But now I have a Link error: Using Visual Studio 2005, now I try with Visual Studio 2008... ;-) 1>------ Build started: Project: gdi, Configuration: Debug Static CRT Win32 ------ 1>Linking... 1> Creating library C:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\Debug Static CRT\OPENGL32.lib and object C:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\Debug Static CRT\OPENGL32.exp 1>driverfuncs.obj : error LNK2019: unresolved external symbol __mesa_init_sync_object_functions referenced in function __mesa_init_driver_functions 1>mesa.lib(context.obj) : error LNK2019: unresolved external symbol __mesa_init_sync referenced in function _init_attrib_groups 1>mesa.lib(context.obj) : error LNK2019: unresolved external symbol __mesa_free_sync_data referenced in function __mesa_free_context_data 1>mesa.lib(api_exec.obj) : error LNK2019: unresolved external symbol __mesa_GetSynciv@20 referenced in function __mesa_init_exec_table 1>mesa.lib(api_exec.obj) : error LNK2019: unresolved external symbol __mesa_WaitSync@16 referenced in function __mesa_init_exec_table 1>mesa.lib(api_exec.obj) : error LNK2019: unresolved external symbol __mesa_ClientWaitSync@16 referenced in function __mesa_init_exec_table 1>mesa.lib(api_exec.obj) : error LNK2019: unresolved external symbol __mesa_FenceSync@8 referenced in function __mesa_init_exec_table 1>mesa.lib(api_exec.obj) : error LNK2019: unresolved external symbol __mesa_DeleteSync@4 referenced in function __mesa_init_exec_table 1>mesa.lib(api_exec.obj) : error LNK2019: unresolved external symbol __mesa_IsSync@4 referenced in function __mesa_init_exec_table 1>mesa.lib(shared.obj) : error LNK2019: unresolved external symbol __mesa_unref_sync_object referenced in function __mesa_free_shared_state 1>mesa.lib(arbprogparse.obj) : error LNK2019: unresolved external symbol __mesa_parse_arb_program referenced in function __mesa_parse_arb_fragment_program 1>C:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\Debug Static CRT\OPENGL32.dll : fatal error LNK1120: 11 unresolved externals 1>Build log was saved at "file://c:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\gdi\Debug Static CRT\BuildLog.htm" 1>gdi - 12 error(s), 0 warning(s) 2>------ Build started: Project: glu, Configuration: Debug Static CRT Win32 ------ 3>------ Build started: Project: osmesa, Configuration: Debug Static CRT Win32 ------ 3>Linking... 2>Linking... 3> Creating library C:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\Debug Static CRT\OSMESA32.lib and object C:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\Debug Static CRT\OSMESA32.exp 2> Creating library C:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\Debug Static CRT\GLU32.lib and object C:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\Debug Static CRT\GLU32.exp 3>Embedding manifest... 3>Performing Post-Build Event... 3> 1 file(s) copied. 2>Embedding manifest... 3> 1 file(s) copied. 3>Build log was saved at "file://c:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\osmesa\Debug Static CRT\BuildLog.htm" 3>osmesa - 0 error(s), 0 warning(s) 2>Performing Post-Build Event... 2> 1 file(s) copied. 2> 1 file(s) copied. 2>Build log was saved at "file://c:\Documents and Settings\XXX\Desktop\Mesa-7.6\windows\VC8\mesa\glu\Debug Static CRT\BuildLog.htm" 2>glu - 0 error(s), 0 warning(s) ========== Build: 2 succeeded, 1 failed, 1 up-to-date, 0 skipped ========== |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008It looks like you are not compiling all the files.
Be sure you have these files in your project: Added files to project list: hash_table.[ch]lex.yy.c with -D
YY_NO_UNISTD_H program_parse_extra.cYY_USE_CONST _CRT_SECURE_NO_DEPRECATE _CRT_NONSTDC_NO_DEPRECATE program_parse_tab.[ch] with -D YYMALLOC=malloc prog_parameter_layout.[ch]YYFREE=free symbol_table.[ch] syncobj.[ch] Somehow you didn't pick up the new windows/VC8/mesa/mesa/mesa.vcproj file. Maybe you had it open when you replaced it. Moving to VS 2008 won't help. Hint: If you see that a symbol is unresolved, try looking for that symbol in the source files and then determine if the source file(s) defining the symbol are being built. On Tue, Nov 17, 2009 at 2:29 AM, Delle <delle69@...> wrote:
------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@... https://lists.sourceforge.net/lists/listinfo/mesa3d-dev |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008> It looks like you are not compiling all the files. > > Be sure you have these files in your project: > > Added files to project list: > hash_table.[ch] > lex.yy.c with -D > YY_NO_UNISTD_H > YY_USE_CONST > _CRT_SECURE_NO_DEPRECATE > _CRT_NONSTDC_NO_DEPRECATE > program_parse_extra.c > program_parse_tab.[ch] with -D > YYMALLOC=malloc > YYFREE=free > prog_parameter_layout.[ch] > symbol_table.[ch] > syncobj.[ch] > > Somehow you didn't pick up the new windows/VC8/mesa/mesa/mesa.vcproj > file. Maybe you had it open when you replaced it. > > Moving to VS 2008 won't help. > > Hint: If you see that a symbol is unresolved, try looking for that symbol > in the source files and then determine if the source file(s) defining the > symbol are being built. > This is what i've done: - I have re-downloaded the file "MesaLib-7.6.zip" from Mesa site - I have applied your patch (with file "mesa.vcproj" too) - I have opened the file "mesa.sln" with VS2005 - Right click onto "Solution 'mesa' (4 projects)" then "Build solution" Please can you try in the same way? Thank you. Delle -- View this message in context: http://old.nabble.com/Error-building-MesaLib-7.6-onto-Win32-with-Microsoft-Visual-Studio-2005-and-2008-tp25990977p26391300.html Sent from the mesa3d-dev mailing list archive at Nabble.com. ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@... https://lists.sourceforge.net/lists/listinfo/mesa3d-dev |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008You are right! I've missed that file.. :( Now it works!!! (========== Rebuild All: 4 succeeded, 0 failed, 0 skipped ==========) Thank you so much!!! |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008:(((
I get an error running my Application (that works fine with NVidia driver): >> "Run-Time Check Failure #0 - The value of ESP was not properly saved across a function call" Maybe this LINK will help... Thank you.
|
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008This is caused by a mismatch in function signatures in the area of calling convention, cdecl vs stdcall.
Did you REBUILD your mesa project after applying the patches? It is possible that some code was left compiled with the old incorrect version of the syncobj.h file. When you replaced the syncobj.h file with the newer correct version, your object files may still have been newer than the new syncobj.h file and so the object files calling syncobj may not have been recompiled with the right function calling convention. Please REBUILD the project and try again. If that is not it, please at least narrow the problem down to the API call causing this error. Your PNG link isn't working. On Tue, Nov 17, 2009 at 8:24 AM, Delle <delle69@...> wrote:
------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@... https://lists.sourceforge.net/lists/listinfo/mesa3d-dev |
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008>>>Did you REBUILD your mesa project after applying the patches?...
yes I did... Now I have more detail about the problem: 1) I use a delphi Application 2) OpenGL "fixed pipeline" all is OK 3) OpenGL with NVidia CG Shaders (using ARB_fragment_program + ARB_vertex_program profiles) all is OK 4) OpenGL with GLSL KO. I'm able to compile and to build the shader but the following call failed: IdLocation:=glGetUniformLocationARB(Self.FProgram,PGLcharARB(PChar('CameraPos'))); (Delphi) Similar to: IdLocation=glGetUniformLocationARB(this->FProgram,"CameraPos"); (c++) Debugging the application, I get this error on that line ("File "glapitemp.h" line 3711 Run-Time Check Failure #0 - The value of ESP was not prope...") I use Mesa32 in Debug version (dynamic linking CRT) Hope this is helpful to you... ;-) Delle
|
|
|
Re: Error building MesaLib 7.6 onto Win32 with Microsoft Visual Studio 2005 and 2008This is an extension and so may have to be called a bit differently.
I added the following to gears.c in the progs/demos folder and it works fine, passing all stack checks: #include <GL/glext.h> static PFNGLGETUNIFORMLOCATIONARBPROC glGetUniformLocationARB = NULL; #ifdef WIN32 #define GETPROCADDRESS(F) wglGetProcAddress(F) #else #define GETPROCADDRESS(F) glutGetProcAddress(F) #endif ... glGetUniformLocationARB = (PFNGLGETUNIFORMLOCATIONARBPROC) GETPROCADDRESS("glGetUniformLocationARB"); glGetUniformLocationARB(0,NULL); It sort of looks like you somehow got the wrong function prototype for this ARB function in your delphi layer and hence are getting the mismatch. Karl On Wed, Nov 18, 2009 at 3:05 AM, Delle <delle69@...> wrote:
------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@... https://lists.sourceforge.net/lists/listinfo/mesa3d-dev |
| Free embeddable forum powered by Nabble | Forum Help |