|
From: Ryan P. <rpu...@gm...> - 2007-09-05 18:28:13
|
On 9/5/07, John Labenski <jla...@gm...> wrote: > > On 8/31/07, Ryan Pusztai <rpu...@gm...> wrote: > > I hate to ask this because I am a developer of other open-source project > and > > know what a pain this type of question can introduce; > > Ugh. :) ;-) If I remember correctly the problem is that the build files DO specify > the GL lib, but that you haven't built it? Here is the command line: pcrt4 -ladvapi32 -lwsock32 -lodbc32 -llua5.1 if not exist ..\..\..\bin\gcc_lib mkdir ..\..\..\bin\gcc_lib g++ -o ..\..\..\bin\gcc_lib\wxlua.exe gccmsw\app_wxlua_wxlua.o gccmsw\app_wxlua_lconsole.o gccmsw\app_wxlua_wxlua_rc.o -mthreads -LD:\devel\Libraries\wxWidgets2.8\lib\gcc_lib -L..\..\..\lib\gcc_lib -L..\..\..\modules\lua\lib -Wl,--subsys tem,windows -mwindows -lwxlua_msw28_wxluasocket -lwxlua_msw28_wxluadebug -lwxlua_msw28_wxbindadv -lwxlua_msw28_wxbinda ui -lwxlua_msw28_wxbindbase -lwxlua_msw28_wxbindcore -lwxlua_msw28_wxbindgl -lwxlua_msw28_wxbindhtml -lwxlua_msw28_wxbin dmedia -lwxlua_msw28_wxbindnet -lwxlua_msw28_wxbindstc -lwxlua_msw28_wxbindxml -lwxlua_msw28_wxbindxrc -lwxlua_msw28_wxl ua -llua5.1 -lwxmsw28_stc -lwxmsw28 -lwxtiff -lwxjpeg -lwxpng -lwxzlib -lwxregex -lwxexpat -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lwsock32 -lodb c32 ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_bind.o):wxgl_bind.cpp:(.data+0xc): undefined reference to `wxGLCanvas::ms_classInfo' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_bind.o):wxgl_bind.cpp:(.data+0x30): undefined reference to `wxGLContext::ms_classInfo' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0xce): undefined reference to `wxGLCanvas::SetColour(char const*)' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0x3c1): undefined reference to `wxGLCanvas::wxGLCanvas(wxWindow*, wxGLCanvas const*, int, wxPoint const&, wxSize const&, long, wxString const&, int*, wxPalette const&)' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0x749): undefined reference to `wxGLCanvas::wxGLCanvas(wxWindow*, int, int*, wxPoint const&, wxSize const&, long, wxString const&, wxPalette const&)' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0x99d): undefined reference to `wxGLCanvas::SwapBuffers()' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0xa4d): undefined reference to `wxGLCanvas::SetCurrent()' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0xb1c): undefined reference to `wxGLCanvas::SetCurrent(wxGLContext const&) const' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0xde9): undefined reference to `wxGLContext::wxGLContext(wxGLCanvas*, wxGLContext const*)' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0xeec): undefined reference to `wxGLContext::SetCurrent(wxGLCanvas const&) const' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0x1269): undefined reference t o `wxGLCanvas::wxGLCanvas(wxWindow*, int, wxPoint const&, wxSize const&, long, wxString const&, int*, wxPalette const&)' ..\..\..\lib\gcc_lib/libwxlua_msw28_wxbindgl.a(wxbindgl_lib_wxgl_gl.o):wxgl_gl.cpp:(.text+0x15f1): undefined reference t o `wxGLCanvas::wxGLCanvas(wxWindow*, wxGLContext const*, int, wxPoint const&, wxSize const&, long, wxString const&, int* , wxPalette const&)' collect2: ld returned 1 exit status mingw32-make.exe[1]: *** [..\..\..\bin\gcc_lib\wxlua.exe] Error 1 mingw32-make.exe[1]: Leaving directory `D:/devel/lua/wxLua/apps/build/msw' mingw32-make.exe: *** [apps] Error 2 How do I tell if this is the case? I have built the wxGL library, so I don't know. I have also defined #define wxUSE_GLCANVAS 1 in "setup.h". I have not touched any files in the wxLua source archive. I have set the environment variable WXWIN to my wxWidgets install root directory. Am I missing anything else? If this is the case then > it's easy; > 1) Edit the build file you use and just remove the linking dependency > for the GL lib. > This takes a little bit of digging, but it shouldn't be hard, > search for "GL" > 2) Edit modules/wxbind/setup/wxluasetup.h and put "wxLUA_USE_wxGLCanvas 0" > 3) Don't call wxLuaBinding_wxgl_init() I am trying to determine how I am going to maintain this issue. If I edit the files in wxLua, that means I can't external to the sources, once you move to using SVN. Plus I don't want to maintain this for the lifetime of my project. Can you tell me what the bare minimum things are to use wxLua in my application? Can you tell me what the bare minimum things required for using wxLua as a Lua module? I think it starts to get into this in the installation document, but I am still trying to build the entire package, because usually makefiles are easy to build from. <A personal sidebar discussion> (These are only thoughts not criticisms) I am just asking, is BakeFile the way that you prefer to build wxLua. If not, is the person that set them up going to return? I started using BakeFile a couple of years ago and found it extremely complicated. So much so that I can't even attempt to fix these issues I am having, in the place where I believe the problem comes from, the BakeFiles. I do not mean any disrespect and only ask to see if I can help figure out a bulletproof way of building wxLua. It is so crucial for a package such as wxLua to be easy to build because it is going to have the ability to be embedded in a users application. Your thoughts and remarks? <End personal sidebar discussion> -- Regards, Ryan RJP Computing |