From: Francesco M. <f18...@ya...> - 2006-01-18 20:45:11
|
Hi all, I'm finally back from my last exams (crossing fingers waiting results :)) >I tried to compile on Linux. ( wxWidgets 2.6.2 with contrib installed >and static libs last installed ). >So wx-config gives static libs when asking for --libs.) >But i have several problems. >How does one configure to become static or dynamic libs? > >First i get warnings like this. >./wxlua/src/wxlstate.cpp:314:5: warning: "WXWIN_COMPATIBILITY_24" is yes, I get these, too. Maybe someone with more wxLua knowledge could fix these... >Eventually it compiles, but when i call make install, the result is >this. >I have no idea what is going on here. I know what the problem is: bakefile 0.9 doesn't have good install/uninstall support. John and all other wxLua admin: I made a patched version of Bakefile (0.2.0) with a lot of additional features which would fix, among others, also install and uninstall targets. Should I upgrade wxLua bakefiles to 0.2.0, while we wait that my additional features (which I also submit to bakefile project as patches) are applied and official 0.2 is released ? My bakefile 0.2.0 is available at: www.geocities.com/f18m_cpp217828/frm-bakefile.tar.gz >I tried configure --enable-wxlua-app, >this does not do anything it looks. IIRC something like wxluasetup.h was supposed to be created and the WXLUASETUP_DIR & WXLUABINDLIB_DIR options should be used somewhere in bakefiles. Anyway --enable-wxlua-app should work. I'll look into this. >Assuming i do something wrong and all this should work. >How does one find the wxLua settings? >Is there a wxlua-config ---libs --include etc. ? I think it would be a little overkill create a wxlua-config script; wouldn't be better to create a wxlua.pc file for pkg-config, so that one could use pkg-config wxlua --libs or pkg-config wxlua --cflags ? >I need to detect wxLua, i am trying to this from Cmake currently by >setting a WXLUA var. >But if there will be wxlua-config , that would be the solution. I propose to use a pkg-config template file just because it's ultra easy to build one. Basically the wxlua.pc.in file would look as: prefix=@prefix@ exec_prefix=@exec_prefix@ libdir=@libdir@ includedir=@includedir@ Name: @PACKAGE_NAME@ Description: wxWidgets lua wrappers Version: @PACKAGE_VERSION@ Requires: Libs: -L${libdir} -lwxlua Cflags: -I${includedir}/lua Just let me know... Francesco Montorsi PS: wxLua currently doesn't compile on my AMD64 linux box. This is because in a lot of places some (int) casts are used to cast memory pointers. In a 64 bit environment pointers are 64 bit wide and thus I replaced all those (int) with (long). Then wxLua compiled. Should I commit these changes ? PS2: I subscribed wxlua-users mailing list to Gmane. I hope this is not a problem to anyone ;) ___________________________________ Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB http://mail.yahoo.it |
From: John L. <jla...@gm...> - 2006-01-19 03:50:36
|
On 1/18/06, Francesco Montorsi <f18...@ya...> wrote: > Hi all, > > I'm finally back from my last exams (crossing fingers waiting > results :)) Good luck! > >I tried to compile on Linux. ( wxWidgets 2.6.2 with contrib installed > >and static libs last installed ). > >So wx-config gives static libs when asking for --libs.) > >But i have several problems. > >How does one configure to become static or dynamic libs? > > > >First i get warnings like this. > >./wxlua/src/wxlstate.cpp:314:5: warning: "WXWIN_COMPATIBILITY_24" is > yes, I get these, too. > Maybe someone with more wxLua knowledge could fix these... Ok, I've removed WXWIN_COMPATIBILITY_24 since I think the !wxCHECK_VERSION(2,5,0) is good enough, but I think it should be defined in 2.6 to either 0 or 1 no matter what. I think your wx/setup.h (in linux in wxWidgets/lib/wx/include/gtk2-unicode-debug-2.7/wx for me when I compile in gtk2 in unicode) is not being included somehow? It's committed now. > >Eventually it compiles, but when i call make install, the result is >th= is. > >I have no idea what is going on here. > I know what the problem is: bakefile 0.9 doesn't have good > install/uninstall support. > > John and all other wxLua admin: I made a patched version of Bakefile > (0.2.0) with a lot of additional features which would fix, among others, > also install and uninstall targets. > Should I upgrade wxLua bakefiles to 0.2.0, while we wait that my > additional features (which I also submit to bakefile project as patches) > are applied and official 0.2 is released ? > > My bakefile 0.2.0 is available at: > www.geocities.com/f18m_cpp217828/frm-bakefile.tar.gz Ok, I never install anything in my linux systems. Using your bakefile means that we have to always use that from now on right? I've unfortunately had problems using bakefile in linux when I download the src and compile it myself. It can't find the wxWidgets presets IIRC. Therefore I've been using it in windows, is it easy to compile there, I'd hope so? :) > >I tried configure --enable-wxlua-app, > >this does not do anything it looks. > IIRC something like wxluasetup.h was supposed to be created and the > WXLUASETUP_DIR & WXLUABINDLIB_DIR options should be used somewhere in > bakefiles. > Anyway --enable-wxlua-app should work. I'll look into this. > > > >Assuming i do something wrong and all this should work. > >How does one find the wxLua settings? > >Is there a wxlua-config ---libs --include etc. ? > I think it would be a little overkill create a wxlua-config script; > wouldn't be better to create a wxlua.pc file for pkg-config, so that one > could use > > pkg-config wxlua --libs > or > pkg-config wxlua --cflags Probably, I've never used tried this, but I have some *.pc files on my system and they seem fairly straightforward. > >I need to detect wxLua, i am trying to this from Cmake currently by > >setting a WXLUA var. > >But if there will be wxlua-config , that would be the solution. > I propose to use a pkg-config template file just because it's ultra easy > to build one. Basically the wxlua.pc.in file would look as: > > prefix=3D@prefix@ > exec_prefix=3D@exec_prefix@ > libdir=3D@libdir@ > includedir=3D@includedir@ > > Name: @PACKAGE_NAME@ > Description: wxWidgets lua wrappers > Version: @PACKAGE_VERSION@ > Requires: > Libs: -L${libdir} -lwxlua > Cflags: -I${includedir}/lua > > Just let me know... > Francesco Montorsi This would be good if you could add it. > PS: wxLua currently doesn't compile on my AMD64 linux box. > This is because in a lot of places some (int) casts are used to cast > memory pointers. In a 64 bit environment pointers are 64 bit wide and > thus I replaced all those (int) with (long). Then wxLua compiled. > Should I commit these changes ? Yes please, I don't have access to any 64 bit machines. > PS2: I subscribed wxlua-users mailing list to Gmane. I hope this is not > a problem to anyone ;) Great. Regards, John Labenski |
From: Francesco M. <f18...@ya...> - 2006-01-19 18:30:50
|
Hi, John Labenski ha scritto: > On 1/18/06, Francesco Montorsi <f18...@ya...> wrote: > >>Hi all, >> >> I'm finally back from my last exams (crossing fingers waiting >>results :)) > > > Good luck! thanks ;) >> >I tried to compile on Linux. ( wxWidgets 2.6.2 with contrib installed >> >and static libs last installed ). >> >So wx-config gives static libs when asking for --libs.) >> >But i have several problems. >> >How does one configure to become static or dynamic libs? >> > >> >First i get warnings like this. >> >./wxlua/src/wxlstate.cpp:314:5: warning: "WXWIN_COMPATIBILITY_24" is >>yes, I get these, too. >>Maybe someone with more wxLua knowledge could fix these... > > > Ok, I've removed WXWIN_COMPATIBILITY_24 since I think the > !wxCHECK_VERSION(2,5,0) is good enough, but I think it should be > defined in 2.6 to either 0 or 1 no matter what. I think your > wx/setup.h (in linux in > wxWidgets/lib/wx/include/gtk2-unicode-debug-2.7/wx for me when I > compile in gtk2 in unicode) is not being included somehow? It's > committed now. maybe this is because I use wx2.7.0 and wxdev could have replaced WXWIN_COMPATIBILITY_24 with WXWIN_COMPATIBILITY_26 (but I'm not sure). >> >Eventually it compiles, but when i call make install, the result is >this. >> >I have no idea what is going on here. >>I know what the problem is: bakefile 0.9 doesn't have good >>install/uninstall support. >> >>John and all other wxLua admin: I made a patched version of Bakefile >>(0.2.0) with a lot of additional features which would fix, among others, >>also install and uninstall targets. >>Should I upgrade wxLua bakefiles to 0.2.0, while we wait that my >>additional features (which I also submit to bakefile project as patches) >>are applied and official 0.2 is released ? >> >>My bakefile 0.2.0 is available at: >> www.geocities.com/f18m_cpp217828/frm-bakefile.tar.gz > > > Ok, I never install anything in my linux systems. well, in this case you won't benefit much from bakefile-upgrading :) > Using your bakefile > means that we have to always use that from now on right? yes, it would use some tags and stuff backward incompatible (but bakefiles would be easier to read & maintain & have some bugs fixed!). > I've > unfortunately had problems using bakefile in linux when I download the > src and compile it myself. > It can't find the wxWidgets presets IIRC. the wxpresets does not come with bakefile. They are installed by wxWidgets when you call "make install" but if you don't install wx, then you have to manually cp them into /usr/local/bakefile/presets ;) > Therefore I've been using it in windows, is it easy to compile there, > I'd hope so? :) well, my archive doesn't contain the win32 installer (it would not be easy to pack bakefile for me for win32 as it requires a python interpreter embedded...). But you can just install bakefile 0.1.9 and then untar my archive on your "C:\programs" folder overwriting all old files. That should do the trick ;) > This would be good if you could add it. added; just waiting for committing it as I did also bakefiles changes and I'm testing wxLua on win32 and linux. > > >>PS: wxLua currently doesn't compile on my AMD64 linux box. >>This is because in a lot of places some (int) casts are used to cast >>memory pointers. In a 64 bit environment pointers are 64 bit wide and >>thus I replaced all those (int) with (long). Then wxLua compiled. >>Should I commit these changes ? > > > Yes please, I don't have access to any 64 bit machines. ok, I'll do the commits together with build changes. Francesco Montorsi ------------------ Homepage: http://home.tele2.it/f18m Any sufficiently advanced bug is indistinguishable from a feature. ------------------ |
From: k. h. <kla...@nl...> - 2006-01-19 08:20:21
|
Francesco Montorsi wrote: > Hi all, > > I'm finally back from my last exams (crossing fingers waiting > results :)) Aah you mean that side job you have ;-) > > > pkg-config wxlua --libs > > or > > pkg-config wxlua --cflags maybe seperate includes and cflags. In cmake i have to decifer wx-config output a lot to make useable. The more it is separated in useable parts the better it is. A second thing is that on windows the solution is different (WXLUA var i think). I wonder if the wxlua.pc can contain more stuff, which is morer suitable for other environments/build systems. e.g. a list of libraries without -l in it and a libpath withput -L is for me much more handy. If those can be added somehow, that would makes things simpler. > > Basically the wxlua.pc.in file would look as: > > prefix=@prefix@ > exec_prefix=@exec_prefix@ > libdir=@libdir@ > includedir=@includedir@ This looks interesting. Where is this file normally installed ? Can it be generated for Pc too? > > Name: @PACKAGE_NAME@ > Description: wxWidgets lua wrappers > Version: @PACKAGE_VERSION@ > Requires: > Libs: -L${libdir} -lwxlua > Cflags: -I${includedir}/lua > > > Just let me know... good idea, and i believe that pkconfig etc. is now on all latets linux distributions by default. regards, Klaas -- Unclassified |
From: Francesco M. <f18...@ya...> - 2006-01-19 18:15:03
|
Hi, k. holwerda ha scritto: > > > Francesco Montorsi wrote: > >> Hi all, >> >> I'm finally back from my last exams (crossing fingers waiting >> results :)) > > > Aah you mean that side job you have ;-) right ;) > maybe seperate includes and cflags. well, actually I think that we should not need to define any special symbol in cflags; as shown below, I think that just using a -I${includedir}/lua should work (as long as wxlua-based apps also include the `wx-config --cflags`!). Even if I think it's rather unprobable, in future some other flags which are not simple -I could be added as 'cflags', so I think it's best to add a variable like includepaths=-I${includedir}/lua that you will be able to retrieve as: pkg-config wxlua --variable=includepaths See http://www.ece.umr.edu/web-cgi/unixsoft.cgi?command=pkg-config for more info. > In cmake i have to decifer wx-config output a lot to make useable. > The more it is separated in useable parts the better it is. Yes, I understand; fortunately pkg-config is small but powerful ;) > A second thing is that on windows the solution is different (WXLUA var i > think). pkg-config also exists for windows. I've never tried it on win32, though. Also, I think that a WXLUA var should be enough there. (if I would use wxLua in a bakefile-based application I would add a WXLUA_DIR option which can be used by the user to specify wxLua location ). > I wonder if the wxlua.pc can contain more stuff, which is morer suitable > for other environments/build systems. > e.g. a list of libraries without -l in it and a libpath withput -L is > for me much more handy. sure, through --variable and -libs-only-L, --libs-only-l and maybe --msvc-syntax if you don't want the -l. > This looks interesting. Where is this file normally installed ? in /lib/pkgconfig or /usr/lib/pkgconfig or /usr/local/lib/pkgconfig depending on the prefix. pkgconfig searchs all of them. > Can it > be generated for Pc too? sorry, what do you mean by "Pc" here ? Francesco Montorsi ------------------ Homepage: http://home.tele2.it/f18m This is Linux country, on a quiet night you can hear NT Reboot. ------------------ |
From: klaas.holwerda <kho...@xs...> - 2006-01-19 19:25:54
|
Francesco Montorsi wrote: > > >> A second thing is that on windows the solution is different (WXLUA >> var i think). > > pkg-config also exists for windows. That is good to hear. > I've never tried it on win32, though. Also, I think that a WXLUA var > should be enough there. (if I would use wxLua in a bakefile-based > application I would add a WXLUA_DIR option which can be used by the > user to specify wxLua location ). That is enough to knwo its location, the problem is to get the information needed like libs etc. Like in Cmake i have to write code for that, while the information is already available in wxLua itself, there is only not an easy way to retrieve in on windows. > > >> I wonder if the wxlua.pc can contain more stuff, which is morer >> suitable for other environments/build systems. >> e.g. a list of libraries without -l in it and a libpath withput -L >> is for me much more handy. > > sure, through --variable and -libs-only-L, --libs-only-l and maybe > --msvc-syntax if you don't want the -l. Great, love to see those.. > >> Can it be generated for Pc too? > > sorry, what do you mean by "Pc" here ? Sorry i meant windows. Worked to much on Unix system i think ;-) Klaas |
From: Francesco M. <f18...@ya...> - 2006-01-19 20:14:56
|
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_wxWindow' ../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_wxBitmap' ./wxlua/src/internal.cpp:1185: undefined reference to `s_wxluatag_wxBitmap' ./wxlua/src/internal.cpp:1190: undefined reference to `s_wxluatag_wxBitmap' ./wxlua/src/internal.cpp:1195: undefined reference to `s_wxluatag_wxBitmap' ./wxlua/src/internal.cpp:1200: undefined reference to `s_wxluatag_wxBitmap' ../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. Francesco |
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 |
From: Francesco M. <f18...@ya...> - 2006-01-20 13:19:00
|
Hi, John Labenski ha scritto: >>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) I tried to change the library order to match this one but it still doesn't work (same errors). I then tried to use the hand-made Makefile but I get: frm@genius:~/work/wxLua/apps/wxlua/src$ sudo make make[1]: Entering directory `/home/frm/work/wxLua/modules/lua' cd include; make all make[2]: Entering directory `/home/frm/work/wxLua/modules/lua/include' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/frm/work/wxLua/modules/lua/include' cd src; make all make[2]: Entering directory `/home/frm/work/wxLua/modules/lua/src' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/frm/work/wxLua/modules/lua/src' cd src/lib; make all make[2]: Entering directory `/home/frm/work/wxLua/modules/lua/src/lib' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/frm/work/wxLua/modules/lua/src/lib' cd src/luac; make all make[2]: Entering directory `/home/frm/work/wxLua/modules/lua/src/luac' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/frm/work/wxLua/modules/lua/src/luac' cd src/lua; make all make[2]: Entering directory `/home/frm/work/wxLua/modules/lua/src/lua' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/frm/work/wxLua/modules/lua/src/lua' make[1]: Leaving directory `/home/frm/work/wxLua/modules/lua' make[1]: Entering directory `/home/frm/work/wxLua/modules/wxlua/src' g++ -shared -o /usr/local/lib/libwx_gtk2ud_wxlua-2.7.so.1.5.0 internal.o wxlbind.o wxlcallb.o wxlintrp.o wxlstate.o /usr/bin/ld: internal.o: relocation R_X86_64_32 against `a local symbol' can not be used when making a shared object; recompile with -fPIC internal.o: could not read symbols: Bad value collect2: ld returned 1 exit status make[1]: *** [/usr/local/lib/libwx_gtk2ud_wxlua-2.7.so.1.5.0] Error 1 make[1]: Leaving directory `/home/frm/work/wxLua/modules/wxlua/src' make: *** [wxLuaLib] Error 2 frm@genius:~/work/wxLua/apps/wxlua/src$ And this did not work with both a static and a shared build of wxWidgets. Last, I searched for the unresolved linker symbols: i.e. s_wxluatag_wxWindow, s_wxluatag_wxBitmap, s_wxluatag_wxEvtHandler, s_wxluatag_wxEvent and I found that they are all declared as extern symbols at the beginning of some CPP files (like wxlstate.cpp) but then they are not defined anywhere. How did you manage to compile these sources ? Do I have to run some bind generator ? Or you have some un-committed sources in your local copy ? Francesco |
From: John L. <jla...@gm...> - 2006-01-20 16:43:13
|
On 1/20/06, Francesco Montorsi <f18...@ya...> wrote: > make[1]: Entering directory `/home/frm/work/wxLua/modules/wxlua/src' > g++ -shared -o /usr/local/lib/libwx_gtk2ud_wxlua-2.7.so.1.5.0 internal.o > wxlbind.o wxlcallb.o wxlintrp.o wxlstate.o > /usr/bin/ld: internal.o: relocation R_X86_64_32 against `a local symbol' > can not be used when making a shared object; recompile with -fPIC > internal.o: could not read symbols: Bad value > collect2: ld returned 1 exit status > make[1]: *** [/usr/local/lib/libwx_gtk2ud_wxlua-2.7.so.1.5.0] Error 1 > make[1]: Leaving directory `/home/frm/work/wxLua/modules/wxlua/src' > make: *** [wxLuaLib] Error 2 > frm@genius:~/work/wxLua/apps/wxlua/src$ > > And this did not work with both a static and a shared build of wxWidgets. > > Last, I searched for the unresolved linker symbols: i.e. > s_wxluatag_wxWindow, s_wxluatag_wxBitmap, s_wxluatag_wxEvtHandler, > s_wxluatag_wxEvent and I found that they are all declared as extern > symbols at the beginning of some CPP files (like wxlstate.cpp) but then > they are not defined anywhere. > > How did you manage to compile these sources ? > Do I have to run some bind generator ? > Or you have some un-committed sources in your local copy ? You have to run make in bindings/wxwidgets to generate the bindings in modules/wxbind/. This is because of the number of changes being made to the binding generator. Regards, John Labenski |
From: Francesco M. <f18...@ya...> - 2006-01-20 18:49:58
|
Hi, John Labenski ha scritto: > On 1/20/06, Francesco Montorsi <f18...@ya...> wrote: > >>make[1]: Entering directory `/home/frm/work/wxLua/modules/wxlua/src' >>g++ -shared -o /usr/local/lib/libwx_gtk2ud_wxlua-2.7.so.1.5.0 internal.o >>wxlbind.o wxlcallb.o wxlintrp.o wxlstate.o >>/usr/bin/ld: internal.o: relocation R_X86_64_32 against `a local symbol' >>can not be used when making a shared object; recompile with -fPIC >>internal.o: could not read symbols: Bad value >>collect2: ld returned 1 exit status >>make[1]: *** [/usr/local/lib/libwx_gtk2ud_wxlua-2.7.so.1.5.0] Error 1 >>make[1]: Leaving directory `/home/frm/work/wxLua/modules/wxlua/src' >>make: *** [wxLuaLib] Error 2 >>frm@genius:~/work/wxLua/apps/wxlua/src$ >> >>And this did not work with both a static and a shared build of wxWidgets. >> >>Last, I searched for the unresolved linker symbols: i.e. >>s_wxluatag_wxWindow, s_wxluatag_wxBitmap, s_wxluatag_wxEvtHandler, >>s_wxluatag_wxEvent and I found that they are all declared as extern >>symbols at the beginning of some CPP files (like wxlstate.cpp) but then >>they are not defined anywhere. >> >>How did you manage to compile these sources ? >>Do I have to run some bind generator ? >>Or you have some un-committed sources in your local copy ? > > > You have to run make in bindings/wxwidgets to generate the bindings in > modules/wxbind/. This is because of the number of changes being made > to the binding generator. grr; I always forgot about that step. Could we commit the generated bindings in CVS ? We also really need some way to: 1) produce luasetup.h from luasetup.h.in (maybe adding 'wx' prefix to both as we discussed time ago): I had to manually change it to exclude the contrib wx headers which I do not have installed and wxFontMapper (see point #3) 2) fix warnings about non-existing symbols (I get ton of messages like: ./modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is not defined ./../modules/wxbind/include/wxbind.h:328:5: warning: "wxLUA_USE_wxCriticalSection" is not defined ./../modules/wxbind/include/wxbind.h:506:5: warning: "wxLUA_USE_wxCriticalSectionLocker" is not defined ./../modules/wxbind/include/wxbind.h:919:5: warning: "wxLUA_USE_wxCriticalSectionLocker" is not defined ./../modules/wxbind/include/wxbind.h:1038:6: warning: "wxUSE_WAVE" is not defined ... ) 3) now compilation stops on my file: ./wxbind/src/gdi.cpp:2289: error: ‘class wxFontMapper’ has no member named ‘SetConfig’ this is probably because I use wxCVS. I see in gdi.i: %class %noclassinfo wxFontMapper .... void SetConfig(wxConfigBase *config = NULL) ... %endclass can something like %class %noclassinfo wxFontMapper .... #if !wxCHECK_VERSION(2, 7, 0) void SetConfig(wxConfigBase *config = NULL) #endif ... %endclass be written ? 4) disabling wxFontMapper I now get all the errors in the attached log. This is because I'm on a 64bit machine. Is wxbind/src/wx_class.cpp something automatically generated ? If yes, the wxlua wrapper generator should be changed to output (long) casts instead of (int) ones... Thanks, Francesco Montorsi |
From: John L. <jla...@gm...> - 2006-01-20 22:08:59
|
On 1/20/06, Francesco Montorsi <f18...@ya...> wrote: > Hi, > > John Labenski ha scritto: > > On 1/20/06, Francesco Montorsi <f18...@ya...> wrote: > > > >>make[1]: Entering directory `/home/frm/work/wxLua/modules/wxlua/src' > >>g++ -shared -o /usr/local/lib/libwx_gtk2ud_wxlua-2.7.so.1.5.0 internal.= o > >>wxlbind.o wxlcallb.o wxlintrp.o wxlstate.o > >>/usr/bin/ld: internal.o: relocation R_X86_64_32 against `a local symbol= ' > >>can not be used when making a shared object; recompile with -fPIC > >>internal.o: could not read symbols: Bad value > >>collect2: ld returned 1 exit status > >>make[1]: *** [/usr/local/lib/libwx_gtk2ud_wxlua-2.7.so.1.5.0] Error 1 > >>make[1]: Leaving directory `/home/frm/work/wxLua/modules/wxlua/src' > >>make: *** [wxLuaLib] Error 2 > >>frm@genius:~/work/wxLua/apps/wxlua/src$ > >> > >>And this did not work with both a static and a shared build of wxWidget= s. > >> > >>Last, I searched for the unresolved linker symbols: i.e. > >>s_wxluatag_wxWindow, s_wxluatag_wxBitmap, s_wxluatag_wxEvtHandler, > >>s_wxluatag_wxEvent and I found that they are all declared as extern > >>symbols at the beginning of some CPP files (like wxlstate.cpp) but then > >>they are not defined anywhere. > >> > >>How did you manage to compile these sources ? > >>Do I have to run some bind generator ? > >>Or you have some un-committed sources in your local copy ? > > > > > > You have to run make in bindings/wxwidgets to generate the bindings in > > modules/wxbind/. This is because of the number of changes being made > > to the binding generator. > grr; I always forgot about that step. > > Could we commit the generated bindings in CVS ? Ok, I'll do that this weekend. > We also really need some way to: > 1) produce luasetup.h from luasetup.h.in (maybe adding 'wx' prefix to > both as we discussed time ago): I had to manually change it to exclude > the contrib wx headers which I do not have installed and wxFontMapper > (see point #3) This is supposed to be like wxWidgets/include/wx/msw/setup0.h where you select what you want included with your wxLua bindings build. I will change it to wxluasetup.h this weekend. > 2) fix warnings about non-existing symbols (I get ton of messages like: > > ./modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is not > defined > ./../modules/wxbind/include/wxbind.h:328:5: warning: > "wxLUA_USE_wxCriticalSection" is not defined > ./../modules/wxbind/include/wxbind.h:506:5: warning: > "wxLUA_USE_wxCriticalSectionLocker" is not defined > ./../modules/wxbind/include/wxbind.h:919:5: warning: > "wxLUA_USE_wxCriticalSectionLocker" is not defined > ./../modules/wxbind/include/wxbind.h:1038:6: warning: "wxUSE_WAVE" is > not defined > ... > ) These should all be defined! I'll get a new cvs head checkout at home in linux (mine is probably a month old) and see if I get them. The wxLUA_USE_XXX are certainly defined in luasetup.h though. > 3) now compilation stops on my file: > > ./wxbind/src/gdi.cpp:2289: error: 'class wxFontMapper' has no member > named 'SetConfig' > > this is probably because I use wxCVS. > I see in gdi.i: > > %class %noclassinfo wxFontMapper > .... > void SetConfig(wxConfigBase *config =3D NULL) > ... > %endclass > > can something like > %class %noclassinfo wxFontMapper .... !%wxchkver27 void SetConfig(wxConfigBase *config =3D NULL) ... %endclass Again, I'll do a wxWidgets cvs update and see if I get the same errors and fix them. > 4) disabling wxFontMapper I now get all the errors in the attached log. > This is because I'm on a 64bit machine. > Is wxbind/src/wx_class.cpp something automatically generated ? > If yes, the wxlua wrapper generator should be changed to output (long) > casts instead of (int) ones... There was no log attached, could you resend it? Regards, John Labenski |
From: Francesco M. <f18...@ya...> - 2006-01-20 22:36:07
Attachments:
log
|
Hi, John Labenski ha scritto: >>>You have to run make in bindings/wxwidgets to generate the bindings in >>>modules/wxbind/. This is because of the number of changes being made >>>to the binding generator. >> >>grr; I always forgot about that step. >> >>Could we commit the generated bindings in CVS ? > > > Ok, I'll do that this weekend. good >>We also really need some way to: >>1) produce luasetup.h from luasetup.h.in (maybe adding 'wx' prefix to >>both as we discussed time ago): I had to manually change it to exclude >>the contrib wx headers which I do not have installed and wxFontMapper >>(see point #3) > > > This is supposed to be like wxWidgets/include/wx/msw/setup0.h where > you select what you want included with your wxLua bindings build. I > will change it to wxluasetup.h this weekend. ok, on win32 I'd keep it exactly like wx's setup0.h but on unix we need (like wx does) a wxluasetup.h.in which is transformed into wxluasetup.h. Last, there are also the <option name="WXLUASETUP_DIR" category="path"> <default-value>$(WXLUASETUP_DIR_DEFAULT)</default-value> <description>The folder where wxluasetup.h is searched</description> </option> <option name="WXLUABINDLIB_DIR" category="path"> <default-value>$(WXLUABINDLIB_DIR_DEFAULT)</default-value> <description>The folder where wxLuaBind library is sent</description> </option> options to connect to the build system... >>2) fix warnings about non-existing symbols (I get ton of messages like: >> >>./modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is not >>defined >>./../modules/wxbind/include/wxbind.h:328:5: warning: >>"wxLUA_USE_wxCriticalSection" is not defined >>./../modules/wxbind/include/wxbind.h:506:5: warning: >>"wxLUA_USE_wxCriticalSectionLocker" is not defined >>./../modules/wxbind/include/wxbind.h:919:5: warning: >>"wxLUA_USE_wxCriticalSectionLocker" is not defined >>./../modules/wxbind/include/wxbind.h:1038:6: warning: "wxUSE_WAVE" is >>not defined >>... >>) > > > These should all be defined! I'll get a new cvs head checkout at home > in linux (mine is probably a month old) and see if I get them. The > wxLUA_USE_XXX are certainly defined in luasetup.h though. I don't know why but the wxUSE_WAVE and wxLUA_USE_wxCriticalSectionLocker symbols are not defined... >>3) now compilation stops on my file: >> >>./wxbind/src/gdi.cpp:2289: error: 'class wxFontMapper' has no member >>named 'SetConfig' >> >>this is probably because I use wxCVS. >>I see in gdi.i: >> >>%class %noclassinfo wxFontMapper >>.... >> void SetConfig(wxConfigBase *config = NULL) >>... >>%endclass >> >>can something like >> > > %class %noclassinfo wxFontMapper > .... > !%wxchkver27 void SetConfig(wxConfigBase *config = NULL) > ... > %endclass > > Again, I'll do a wxWidgets cvs update and see if I get the same errors > and fix them. Ok, great ! >>4) disabling wxFontMapper I now get all the errors in the attached log. >>This is because I'm on a 64bit machine. >>Is wxbind/src/wx_class.cpp something automatically generated ? >>If yes, the wxlua wrapper generator should be changed to output (long) >>casts instead of (int) ones... > > > There was no log attached, could you resend it? sorry ! Francesco |
From: John L. <jla...@gm...> - 2006-01-23 05:35:21
|
> >>Could we commit the generated bindings in CVS ? > > > > Ok, I'll do that this weekend. > good Sorry, not yet, let me sort out the coroutine problems first. I have some thinking to do about it, it needs to be an elegant solution. > >>We also really need some way to: > >>1) produce luasetup.h from luasetup.h.in (maybe adding 'wx' prefix to > >>both as we discussed time ago): I had to manually change it to exclude > >>the contrib wx headers which I do not have installed and wxFontMapper > >>(see point #3) > > > > This is supposed to be like wxWidgets/include/wx/msw/setup0.h where > > you select what you want included with your wxLua bindings build. I > > will change it to wxluasetup.h this weekend. > ok, on win32 I'd keep it exactly like wx's setup0.h but on unix we need > (like wx does) a wxluasetup.h.in which is transformed into wxluasetup.h. I don't think you need to do anything, there's nothing in it that depends on anything that configure could figure out. Hopefully all of the bindings take into account the wxWidgets wxUSE_XXX defines appropriately and so the wxLUA_USE_XXX are a way to not compile in wxLua bindings to parts of the wxWidgets library that either may or may not be compiled in. If this is not the case please tell me where it's wrong. > >>2) fix warnings about non-existing symbols (I get ton of messages like: > >> > >>./modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is not > >>defined > >>./../modules/wxbind/include/wxbind.h:328:5: warning: > >>"wxLUA_USE_wxCriticalSection" is not defined > >>./../modules/wxbind/include/wxbind.h:506:5: warning: > >>"wxLUA_USE_wxCriticalSectionLocker" is not defined > >>./../modules/wxbind/include/wxbind.h:919:5: warning: > >>"wxLUA_USE_wxCriticalSectionLocker" is not defined > >>./../modules/wxbind/include/wxbind.h:1038:6: warning: "wxUSE_WAVE" is > >>not defined > >>... > > > > These should all be defined! I'll get a new cvs head checkout at home > > in linux (mine is probably a month old) and see if I get them. The > > wxLUA_USE_XXX are certainly defined in luasetup.h though. > I don't know why but the wxUSE_WAVE and > wxLUA_USE_wxCriticalSectionLocker symbols are not defined... These are all defined in my last wxWidgets checkout, I'm sorry but I can't understand why iut doesn't work for you. Could you try some things out like putting #if wxUSE_WAVE in the wxWidgets minimal sample and see if you get the warning there? > >>3) now compilation stops on my file: > >> > >>./wxbind/src/gdi.cpp:2289: error: 'class wxFontMapper' has no member > >>named 'SetConfig' Fixed. > .././bk-deps g++ -c -o wxbind_lib_wx_class.o -I./../modules -I/usr/local/= lib/wx/include/gtk2-ansi-debug-static-2.7 -I/usr/local/include/wx-2.7 -D_FI= LE_OFFSET_BITS=3D64 -D_LARGE_FILES -D_LARGEFILE_SOURCE=3D1 -D__WXDEBUG__ -D= __WXGTK__ -pthread -g -O0 -Wall -Wundef -Wno-ctor-dtor-privacy ./wxbind/sr= c/wx_class.cpp > In file included from ./wxbind/src/wx_class.cpp:26: > ./../modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is not = defined > ./../modules/wxbind/include/wxbind.h:328:5: warning: "wxLUA_USE_wxCritica= lSection" is not defined You seem to only get these two warnings, why only these? > ./wxbind/src/wx_class.cpp: In function 'void wxLua_addToTrackedMemoryList= (wxLuaState&, wxTreeItemId*)': All of these are fixed, hopefully. Regards, John Labenski |
From: k. h. <kla...@nl...> - 2006-01-23 11:12:09
|
John Labenski wrote: >>./../modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is not defined >>./../modules/wxbind/include/wxbind.h:328:5: warning: "wxLUA_USE_wxCriticalSection" is not defined >> >> > >You seem to only get these two warnings, why only these? > > Me too, at least the first, i just disabled it in luasetup.h to make it go away. #define wxLUA_USE_wxWave 0 Klaas -- Unclassified |
From: Francesco M. <f18...@ya...> - 2006-01-23 18:31:26
|
k. holwerda ha scritto: > > > John Labenski wrote: > >>> ./../modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is >>> not defined >>> ./../modules/wxbind/include/wxbind.h:328:5: warning: >>> "wxLUA_USE_wxCriticalSection" is not defined >>> >> >> >> You seem to only get these two warnings, why only these? >> >> > Me too, at least the first, i just disabled it in luasetup.h to make it > go away. > > #define wxLUA_USE_wxWave 0 I've found the reason in wx/wave.h: #if wxUSE_SOUND // not wxUSE_WAVE ! ... #include "wx/sound.h" // wxSound used to be called wxWave before wxWidgets 2.5.1: typedef wxSound wxWave; ... #endif Francesco |
From: John L. <jla...@gm...> - 2006-01-24 05:20:10
|
On 1/23/06, Francesco Montorsi <f18...@ya...> wrote: > >>> ./../modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is > >>> not defined > >>> ./../modules/wxbind/include/wxbind.h:328:5: warning: > >>> "wxLUA_USE_wxCriticalSection" is not defined > >> > > Me too, at least the first, i just disabled it in luasetup.h to make i= t > > go away. > > > > #define wxLUA_USE_wxWave 0 > I've found the reason in wx/wave.h: > > #if wxUSE_SOUND // not wxUSE_WAVE !sdf > ... > #include "wx/sound.h" > // wxSound used to be called wxWave before wxWidgets 2.5.1: > typedef wxSound wxWave; > ... > #endif Ok, I've added a new setting in wx.rules where you can add any additional code for the binding header. There is where I've placed #ifndef wxUSE_WAVE #define wxUSE_WAVE 0 #endif so that ti should work anywhere. It's a little bit of a hack, but I think this is all we can do to maintain backwards compatibility. Regards, John Labenski |
From: Francesco M. <f18...@ya...> - 2006-01-25 18:19:14
|
Hi, John Labenski ha scritto: > On 1/23/06, Francesco Montorsi <f18...@ya...> wrote: > >>>>>./../modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is >>>>>not defined > Ok, I've added a new setting in wx.rules where you can add any > additional code for the binding header. There is where I've placed > > #ifndef wxUSE_WAVE > #define wxUSE_WAVE 0 > #endif > > so that ti should work anywhere. It's a little bit of a hack, but I > think this is all we can do to maintain backwards compatibility. I confirm that wxUSE_WAVE warning is disappeared. Still we have at least the following problems: 1) STC (more generically CONTRIB) problem 2) wxLUA_USE_wxCriticalSectionLocker is not defined - maybe it should be added to wxluasetup.h 3) wxLua application needs wxStyledTextCtrl wrapper and an error should be given when it's not available instead of just failing it at runtime (IMO) 4) currently doing a thing like: mkdir mybuild && cd mybuild && ../configure && make doesn't work. I'm going to fix this tomorrow. 5) change the target names to avoid clashes with system installations of LUA. For more info about #1 and #3 please look at my other mails in this same thread. For #5 see 'target names' thread. Francesco |
From: k. h. <kla...@nl...> - 2006-01-26 08:32:58
|
Will test linux this evening, i am trying to set op Suse10.1 ( really nice ) currently. So hope to give you some feedback, on the linux compile soon. Klaas Francesco Montorsi wrote: > Hi, > > John Labenski ha scritto: > >> On 1/23/06, Francesco Montorsi <f18...@ya...> wrote: >> >>>>>> ./../modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is >>>>>> not defined >>>>> >> Ok, I've added a new setting in wx.rules where you can add any >> additional code for the binding header. There is where I've placed >> >> #ifndef wxUSE_WAVE >> #define wxUSE_WAVE 0 >> #endif >> >> so that ti should work anywhere. It's a little bit of a hack, but I >> think this is all we can do to maintain backwards compatibility. > > I confirm that wxUSE_WAVE warning is disappeared. > > Still we have at least the following problems: > > 1) STC (more generically CONTRIB) problem > > 2) wxLUA_USE_wxCriticalSectionLocker is not defined - maybe it should > be added to wxluasetup.h > > 3) wxLua application needs wxStyledTextCtrl wrapper and an error > should be given when it's not available instead of just failing it at > runtime (IMO) > > 4) currently doing a thing like: > mkdir mybuild && cd mybuild && ../configure && make > doesn't work. I'm going to fix this tomorrow. > > 5) change the target names to avoid clashes with system installations > of LUA. > > > For more info about #1 and #3 please look at my other mails in this > same thread. For #5 see 'target names' thread. > -- Unclassified |
From: Francesco M. <f18...@ya...> - 2006-01-23 19:07:33
|
Hi, John Labenski ha scritto: >>>>Could we commit the generated bindings in CVS ? >>> >>>Ok, I'll do that this weekend. >> >>good > > > Sorry, not yet, let me sort out the coroutine problems first. I have > some thinking to do about it, it needs to be an elegant solution. ok >>>>We also really need some way to: >>>>1) produce luasetup.h from luasetup.h.in (maybe adding 'wx' prefix to >>>>both as we discussed time ago): I had to manually change it to exclude >>>>the contrib wx headers which I do not have installed and wxFontMapper >>>>(see point #3) >>> >>>This is supposed to be like wxWidgets/include/wx/msw/setup0.h where >>>you select what you want included with your wxLua bindings build. I >>>will change it to wxluasetup.h this weekend. >> >>ok, on win32 I'd keep it exactly like wx's setup0.h but on unix we need >>(like wx does) a wxluasetup.h.in which is transformed into wxluasetup.h. > > > I don't think you need to do anything, there's nothing in it that > depends on anything that configure could figure out. Hopefully all of > the bindings take into account the wxWidgets wxUSE_XXX defines > appropriately and so the wxLUA_USE_XXX are a way to not compile in > wxLua bindings to parts of the wxWidgets library that either may or > may not be compiled in. If this is not the case please tell me where > it's wrong. now I understood: wxLua bindings are double-"protected" by both wxUSE_XXX symbols and wxLUA_USE_XXX ones. That's good. However I must say that wxbind.h uses very few wxUSE_XXX symbols (I understand it's a real trouble to write all those #if/#endif by hand - BTW is wxbind.h auto generated ?). For example, I haven't got the STC headers installed and my compilation stops with the error: ./../modules/wxbind/include/wxbind.h:579:24: error: wx/stc/stc.h: No such file or directory Unfortunately there is no wxUSE_STC symbols... this is because STC is a contrib. I think we should separe wxlua contrib wrappers from wxlua wxwidgets wrappers and then create a BUILD_CONTRIB_WRAPPERS=0/1 (or something like that :)) option to bakefiles. > > >>>>2) fix warnings about non-existing symbols (I get ton of messages like: >>>> >>>>./modules/wxbind/include/wxbind.h:127:6: warning: "wxUSE_WAVE" is not >>>>defined >>>>./../modules/wxbind/include/wxbind.h:328:5: warning: >>>>"wxLUA_USE_wxCriticalSection" is not defined >>>>./../modules/wxbind/include/wxbind.h:506:5: warning: >>>>"wxLUA_USE_wxCriticalSectionLocker" is not defined >>>>./../modules/wxbind/include/wxbind.h:919:5: warning: >>>>"wxLUA_USE_wxCriticalSectionLocker" is not defined >>>>./../modules/wxbind/include/wxbind.h:1038:6: warning: "wxUSE_WAVE" is >>>>not defined >>>>... >>> >>>These should all be defined! I'll get a new cvs head checkout at home >>>in linux (mine is probably a month old) and see if I get them. The >>>wxLUA_USE_XXX are certainly defined in luasetup.h though. >> >>I don't know why but the wxUSE_WAVE and >>wxLUA_USE_wxCriticalSectionLocker symbols are not defined... > > > These are all defined in my last wxWidgets checkout, I'm sorry but I > can't understand why iut doesn't work for you. Could you try some > things out like putting #if wxUSE_WAVE in the wxWidgets minimal sample > and see if you get the warning there? I've found that wxUSE_WAVE is deprecated since wx2.5.1 in favour of wxUSE_SOUND. I also searched all my local wxLua directory for wxLUA_USE_wxCriticalSectionLocker and I couldn't found any definition of it (I think it should be in wxluasetup.h but it's not). I could just found places where it was used (#if wxLUA_USE_wxCriticalSectionLocker...) should we add it to wxluasetup.h ? Also, I think we need to write in some doc a list of files which are automatically generated. I really have a vague idea about what's auto generated and what not :( In conclusion, since last update, I could build completely wxLua *libraries* just changing #define wxLUA_USE_wxStyledTextCtrl 1 to #define wxLUA_USE_wxStyledTextCtrl 0 However I still get undefined reference to: /wxlua/src/wxlstate.cpp:1740: undefined reference to `s_wxluatag_wxWindow' ./wxlua/src/internal.cpp:1049: undefined reference to `s_wxluatag_wxEvtHandler' ./wxlua/src/internal.cpp:1176: undefined reference to `s_wxluatag_wxBitmap' I'm still looking to these because now I can see that these symbols are defined and compiled. Probably I need to play with library order. As soon as I solve this, I'll commit my bakefile changes. Francesco |
From: Francesco M. <f18...@ya...> - 2006-01-23 19:38:48
|
Hi, > However I still get undefined reference to: > > /wxlua/src/wxlstate.cpp:1740: undefined reference to `s_wxluatag_wxWindow' > ./wxlua/src/internal.cpp:1049: undefined reference to > `s_wxluatag_wxEvtHandler' > ./wxlua/src/internal.cpp:1176: undefined reference to `s_wxluatag_wxBitmap' > > I'm still looking to these because now I can see that these symbols are > defined and compiled. > Probably I need to play with library order. > As soon as I solve this, I'll commit my bakefile changes. I've solved linking problems and committed my bakefile changes. Unfortunately I have a problem when running "wxlua" application: [string "bin/wxlua"]:374: attempt to call field `wxStyledTextCtrl' (a nil value)wxLua: Error while running chunkwxLua: Error while running chunk This is probably because I put wxLUA_USE_StyledTextCtrl to 0; maybe a check like: #if !wxLUA_USE_wxStyledTextCtrl #error wxLua application needs wxStyledTextCtrl ! #endif should be added to some wxlua app source code ? Francesco |
From: Francesco M. <f18...@ya...> - 2006-01-23 21:44:26
|
Hi, >> /wxlua/src/wxlstate.cpp:1740: undefined reference to >> `s_wxluatag_wxWindow' >> ./wxlua/src/internal.cpp:1049: undefined reference to >> `s_wxluatag_wxEvtHandler' >> ./wxlua/src/internal.cpp:1176: undefined reference to >> `s_wxluatag_wxBitmap' >> >> I'm still looking to these because now I can see that these symbols >> are defined and compiled. >> Probably I need to play with library order. >> As soon as I solve this, I'll commit my bakefile changes. > > I've solved linking problems and committed my bakefile changes. now also make install and uninstall work good. I've updated the bakefile archive at: http://www.geocities.com/f18m_cpp217828/frm-bakefile.tar.gz with a little fix. Francesco |
From: Francesco M. <f18...@ya...> - 2006-01-27 22:16:01
|
Hi, I've committed last changes to build system. These fix the point #4 and #5 below and add the "docs" target to the makefiles. Francesco Montorsi ha scritto: > Still we have at least the following problems: > > 1) STC (more generically CONTRIB) problem > > 2) wxLUA_USE_wxCriticalSectionLocker is not defined - maybe it should be > added to wxluasetup.h looking to wxluasetup.h I've found that there is a heading which says that it's generated by "utils/get_luasetup"; however I couldn't find that util. Is that true or that's an old comment? > 3) wxLua application needs wxStyledTextCtrl wrapper and an error should > be given when it's not available instead of just failing it at runtime > (IMO) > > 4) currently doing a thing like: > mkdir mybuild && cd mybuild && ../configure && make > doesn't work. I'm going to fix this tomorrow. now works nicely > > 5) change the target names to avoid clashes with system installations of > LUA. done. However I think that we have some more issues: 6) there are various files which have lines like: #include "../../../art/something.xpm" these needs to be changed! If noone is contrary, I'll do these changes. 7) can I start to connect the options WXLUASETUP_DIR and WXLUABINDLIB_DIR to the build system ? Francesco PS: I'd like to complete the build system of wxLua ASAP because I'm going to have busy weeks later... :( |
From: Francesco M. <f18...@ya...> - 2006-01-31 13:19:26
|
Hi, Francesco Montorsi ha scritto: >> 1) STC (more generically CONTRIB) problem >> >> 2) wxLUA_USE_wxCriticalSectionLocker is not defined - maybe it should >> be added to wxluasetup.h > > looking to wxluasetup.h I've found that there is a heading which says > that it's generated by "utils/get_luasetup"; however I couldn't find > that util. > Is that true or that's an old comment? > > > >> 3) wxLua application needs wxStyledTextCtrl wrapper and an error >> should be given when it's not available instead of just failing it at >> runtime (IMO) >> > > 6) there are various files which have lines like: > #include "../../../art/something.xpm" > these needs to be changed! > If noone is contrary, I'll do these changes. fixed and committed the changes. > > 7) can I start to connect the options WXLUASETUP_DIR and > WXLUABINDLIB_DIR to the build system ? Before starting this work, I need to know exactly how they must work ;) If I'm right, they should be used not to *modify* the build of the wxbind module of wxLua (which should always use the modules/wxbind/src/wxluasetup.h header and should always go in the lib/ folder) but rather to *create* a new library, built from same sources of wxbind module, which would be created in the WXLUABINDLIB_DIR folder and which would use the wxluasetup.h found in the WXLUASETUP_DIR path. Is it right ? Francesco |
From: John L. <jla...@gm...> - 2006-01-31 23:20:27
|
> Francesco Montorsi ha scritto: > >> 1) STC (more generically CONTRIB) problem I tried to disconnect wxSTC from the wxWidgets wrappers last night. I think it will take some doing however. Since they'll share the same lua namespace, they don't have to, but I would like the generic flexibility of putting multiple wrappers into the same namespace, any additional wrappers overwrite earlier ones. I have to do some reading up on how to add more to lua in C. I hope it won't be too hard. > >> 2) wxLUA_USE_wxCriticalSectionLocker is not defined - maybe it should > >> be added to wxluasetup.h > > > > looking to wxluasetup.h I've found that there is a heading which says > > that it's generated by "utils/get_luasetup"; however I couldn't find > > that util. > > Is that true or that's an old comment? That is a simple little utility, basicly just grep wxLUA_USE* for the .i files. I will try to find it if I can. > >> 3) wxLua application needs wxStyledTextCtrl wrapper and an error > >> should be given when it's not available instead of just failing it at > >> runtime (IMO) See above about separating it. > > 6) there are various files which have lines like: > > #include "../../../art/something.xpm" > > these needs to be changed! > > If noone is contrary, I'll do these changes. > fixed and committed the changes. ok. > > 7) can I start to connect the options WXLUASETUP_DIR and > > WXLUABINDLIB_DIR to the build system ? > Before starting this work, I need to know exactly how they must work ;) > > If I'm right, they should be used not to *modify* the build of the > wxbind module of wxLua (which should always use the > modules/wxbind/src/wxluasetup.h header and should always go in the lib/ > folder) but rather to *create* a new library, built from same sources of > wxbind module, which would be created in the WXLUABINDLIB_DIR folder and > which would use the wxluasetup.h found in the WXLUASETUP_DIR path. > Is it right ? I would be nice to be able to build the wxbind lib for different wxluasetup.h files, one lib for the wxLua app and others for your programs that use wxLua as a library. Sorry, I didn't follow this too closely. Regards, John Labenski |