From: John L. <jla...@gm...> - 2006-01-20 03:59:32
|
On 1/19/06, Francesco Montorsi <f18...@ya...> wrote: > Hi, > in my local copy of wxLua, everything now works fine. > I've fixed all problems except for the following one: > > frm@genius:~/work/wxLua$ make > (cd ./util/ && make ) > make[1]: Entering directory `/home/frm/work/wxLua/util' > make[1]: Nothing to be done for `all'. > make[1]: Leaving directory `/home/frm/work/wxLua/util' > (cd ./modules/ && make ) > make[1]: Entering directory `/home/frm/work/wxLua/modules' > make[1]: Nothing to be done for `all'. > make[1]: Leaving directory `/home/frm/work/wxLua/modules' > (cd ./apps/ && make ) > make[1]: Entering directory `/home/frm/work/wxLua/apps' > g++ -o ../bin/wxlua app_wxlua_wxlua.o app_wxlua_lconsole.o -L../lib > -lwxluasocket -lwxluadebug -lwxbind -lwxlua -llua -L/usr/local/lib > -pthread /usr/local/lib/libwx_gtk2d_core-2.7.a > /usr/local/lib/libwx_based-2.7.a -pthread -lgtk-x11-2.0 -lgdk-x11-2.0 > -latk-1.0 -lgdk_pixbuf-2.0 -lfontconfig -lXi -lXrandr -lXext -lXcursor > -lXfixes -lpango-1.0 -lXrender -lX11 -lgobject-2.0 -lgmodule-2.0 > -lgthread-2.0 -lglib-2.0 -lXinerama -lpng -ljpeg -ltiff -lz -ldl -lm > ../lib/libwxlua.a(wxlua_lib_wxlstate.o): In function > `wxLuaState::pushuserdatatype(int, void const*)': > ./wxlua/src/wxlstate.cpp:1740: undefined reference to `s_wxluatag_wxWindo= w' > ../lib/libwxlua.a(wxlua_lib_internal.o): In function > `wxEvtHandler_ConnectEvent(lua_State*)': > ./wxlua/src/internal.cpp:1049: undefined reference to > `s_wxluatag_wxEvtHandler' > ../lib/libwxlua.a(wxlua_lib_internal.o): In function > `CreateStandaloneBitmaps(lua_State*)': > ./wxlua/src/internal.cpp:1176: undefined reference to `s_wxluatag_wxBitma= p' > ./wxlua/src/internal.cpp:1185: undefined reference to `s_wxluatag_wxBitma= p' > ./wxlua/src/internal.cpp:1190: undefined reference to `s_wxluatag_wxBitma= p' > ./wxlua/src/internal.cpp:1195: undefined reference to `s_wxluatag_wxBitma= p' > ./wxlua/src/internal.cpp:1200: undefined reference to `s_wxluatag_wxBitma= p' > ../lib/libwxlua.a(wxlua_lib_internal.o):./wxlua/src/internal.cpp:1205: > more undefined references to `s_wxluatag_wxBitmap' follow > ../lib/libwxlua.a(wxlua_lib_wxlcallb.o): In function > `wxLuaCallback::CallFunction(wxEvent*)': > ./wxlua/src/wxlcallb.cpp:125: undefined reference to `s_wxluatag_wxEvent' > collect2: ld returned 1 exit status > make[1]: *** [../bin/wxlua] Error 1 > make[1]: Leaving directory `/home/frm/work/wxLua/apps' > make: *** [apps] Error 2 > frm@genius:~/work/wxLua$ > > does anyone has an idea about this error ? > The library order is: > > -lwxluasocket -lwxluadebug -lwxbind -lwxlua -llua > > and they come before wx libraries as it should be so I really do not > understand it. I don't either? They're defined in libwxbind, no compilation errors there? These are the order they're linked in apps/wxlua/src/Makefile and it works there. -l$(WXLUABIND_LIB) -l$(WXLUA_LIB) -l$(WXLUADEBUG_LIB) -l$(WXLUASOCKET_LIB) $(LUA_LIBS) Having to know these int tags is not great, they can be looked up dynamicly from the classname, but I'd like to see how slow that really is. It might be something that could be cached as needed, for example the callbacks only need s_wxluatag_wxEvent so it'd no great thing to just cache that. I'd like to wait on that though since it'd be a pretty big change and I still have to get the coroutine stuff working again. Let me know if you can figure this out and commit your other changes before I start with things again. Regards, John Labenski |