The CVS module has been renamed from wxruby-swig to wxruby2, and I have checked in the related changes to reflect the name change. Anyone with a CVS tree will need to re-checkout from CVS because of the module name change. There is now a wx.rb in the lib/ directory, which loads the wxruby2 shared library that gets built. I have tagged this as 0.0.22. Next steps: - Apply Choice.i patch from Jani Monoses - Fix unicode errors in class .i files - Eliminate compiler warnings Kevin
> > There is now a wx.rb in the lib/ directory, which loads the wxruby2 > shared library that gets built. >I checked out the module but see no wx.rb in lib Jani
I also did not see wx.rb in the lib directory. The project compiled fine on OS X 10.4 and I installed it but got an error saying the init function could not be found (not at that computer right now so I can not give you the exact wording). I imagine that this is caused by the missing wx.rb file. I have been pretty busy lately so I have not had too much time to hack on wxruby2 the rest of this week does not look good either because I will be on a business trip for 3 days. Last night I did update the wxruby-swig wiki page to more closely reflect the current project state if anyone has more time that would be something nice to work on, it was a valuable resource in getting me going on added to the project. http://wxruby.rubyforge.org/wiki/wiki.pl?How_To_Add_A_New_Class_To_Wxruby-Swig Sean On 7/24/05, Kevin Smith <wxruby@qualitycode.com> wrote:> The CVS module has been renamed from wxruby-swig to wxruby2, and I have > checked in the related changes to reflect the name change. Anyone with a > CVS tree will need to re-checkout from CVS because of the module name > change. > > There is now a wx.rb in the lib/ directory, which loads the wxruby2 > shared library that gets built. > > I have tagged this as 0.0.22. > > Next steps: > - Apply Choice.i patch from Jani Monoses > - Fix unicode errors in class .i files > - Eliminate compiler warnings > > Kevin > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users >
Kevin Smith
2005-Jul-25 12:00 UTC
[Wxruby-users] Missing lib/wx.rb (was: Official name change to wxruby2)
Jani Monoses wrote:> I checked out the module but see no wx.rb in libDoh! It''s there now. Last night, I had issued the cvs add command, but right then the rubyforge folks renamed the cvs module as I had asked. So I had to copy all my changes to a new tree, and in the new tree I forgot to redo the cvs add. And I forgot to do a cvs update/diff after I checked in, which was the real process error. Sorry, Kevin
Sean Long wrote:>Last night I did update the wxruby-swig wiki page to more closely >reflect the current project state if anyone has more time that would >be something nice to work on, it was a valuable resource in getting me >going on added to the project. >http://wxruby.rubyforge.org/wiki/wiki.pl?How_To_Add_A_New_Class_To_Wxruby-Swig > >Have amended a few more details and added http://wxruby.rubyforge.org/wiki/wiki.pl?What_Classes_Are_Implemented_In_Wxruby with a recent snapshot of wxruby vs wxruby cheers alex
Hello all. I''m trying to get my system all set up with MSVC on Win XP and I''m running into a few things that I want to get a good handle on before I change them around. At least the way _I_ built WxWidgets the build process places the libraries in %WXWIN%\lib\vc_lib. The rake build wants them to be in %WXWIN%\lib. I think I should mod the rakemswin file to bring it up-to-date. Second, the wxwin libraries appear to be named wxXXX.lib instead of the bare XXX.lib as specified in rakemswin. Third, the wxmsw[d].lib file appears to now be named wxmsw26[d]_core.lib and we need to add wxmsw26[d]_adv.lib, wxbase26[d].lib and wxmsw26[d]_xrc.lib. Including _xrc requires wxbase26[d]_xml.lib which seems to require something I don''t have at all (libexpat?). I''m kinda stuck here. xrc may not be required, only one external is missing from the library, maybe we can do without it? At this point, I''m stuck. Fourth, the output library tries to get written into a bad directory. I''ve adjusted it to the directory the other libs are in. I have an updated rakemswin if anyone''s interested, though you still can''t rake a complete build out of it. I''d appreciate any help getting this going. Roy
Whoops, cried wolf too soon. I had neglected to build wxexap[d].lib so didn''t see it as an option for linking. All''s good and I''ve compiled the library. We''ll see how far I get now! Roy Roy Sutton wrote:> Hello all. I''m trying to get my system all set up with MSVC on Win XP > and I''m running into a few things that I want to get a good handle on > before I change them around. > > At least the way _I_ built WxWidgets the build process places the > libraries in %WXWIN%\lib\vc_lib. The rake build wants them to be in > %WXWIN%\lib. I think I should mod the rakemswin file to bring it > up-to-date. > > Second, the wxwin libraries appear to be named wxXXX.lib instead of > the bare XXX.lib as specified in rakemswin. > > Third, the wxmsw[d].lib file appears to now be named > wxmsw26[d]_core.lib and we need to add wxmsw26[d]_adv.lib, > wxbase26[d].lib and wxmsw26[d]_xrc.lib. Including _xrc requires > wxbase26[d]_xml.lib which seems to require something I don''t have at > all (libexpat?). I''m kinda stuck here. xrc may not be required, only > one external is missing from the library, maybe we can do without it? > At this point, I''m stuck. > > Fourth, the output library tries to get written into a bad directory. > I''ve adjusted it to the directory the other libs are in. > > I have an updated rakemswin if anyone''s interested, though you still > can''t rake a complete build out of it. I''d appreciate any help > getting this going. > > Roy > > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users > > >
I have updated the ''How to add a new class'' Wiki page with a few clarifications that should help people who are doing this for the first time. Now that I''ve got all this working, does anyone have any suggestions on where I should focus my (somewhat limited) efforts? Is there any particular Windows-specific testing I can do? Attached is my modified rakemswin.rb file. I can''t promise my changes reflect what was anticipated. In particular, I think that the file should try to detect the WxWidgets build number so that 26 is not hard-coded into the file as it is now. Perhaps even smarter would be to just slurp up all the .lib names from the target lib directory, allowing for new libs as they might appear. Roy P.S. >grumble< That should have been wxexpat[d].lib below. Roy Sutton wrote:> Whoops, cried wolf too soon. I had neglected to build wxexap[d].lib > so didn''t see it as an option for linking. All''s good and I''ve > compiled the library. We''ll see how far I get now! > > Roy-------------- next part -------------- # rakemswin.rb # Copyright 2004 by Kevin Smith # released under the wxWidgets license # as part of the wxRuby project ############################# # platform-dependent settings require ''rbconfig'' include Config $cpp = "cl.exe" $ld = "link" $link_output_flag = "/dll /out:" $DEBUG = true # native Windows - requires a static build of wxWindows $WXDIR=ENV[''WXWIN''] $WXVERSION = ''24'' if $DEBUG $DEBUGPOSTFIX=''d'' else $DEBUGPOSTFIX='''' end $WXSRC="#$WXDIR/src/msw" $WXINC="#$WXDIR/include" $WXLIBDIR="#$WXDIR/lib/vc_lib" $INCTEMP="#$WXDIR/lib/msw#{$DEBUGPOSTFIX}" $WXLIB="#$WXLIBDIR/wxmsw26#{$DEBUGPOSTFIX}_core.lib" $wx_cppflags = [ "-I#$WXINC", "/D__WXMSW__", "-D__WXMSW__", "-I#$INCTEMP", ].join('' '') $extra_cppflags = [ "/GR", "/GX", "-DSTRICT", "-DWIN32", "-D__WIN32__", "-D_WINDOWS", "/D__WINDOWS__", "-DWINVER=0x0400", "/D__WIN95__", ].join('' '') if $DEBUG $ruby_cppflags.gsub!(/-MD/," /MDd"); $ruby_cppflags.gsub!(/-O[A-Za-z0-9-]*/, "/Od") $extra_cppflags += " -D_DEBUG -D__WXDEBUG__ -DWXDEBUG=1 " else $extra_cppflags += " -DNDEBUG " end if $DEBUG $wx_ldflags = " /DEBUG /PDB:#$WXLIBDIR/vc60.pdb " else $wx_ldflags = "" end $wx_libs = [ "#$WXLIBDIR/wxpng#{$DEBUGPOSTFIX}.lib", "#$WXLIBDIR/wxzlib#{$DEBUGPOSTFIX}.lib", "#$WXLIBDIR/wxjpeg#{$DEBUGPOSTFIX}.lib", "#$WXLIBDIR/wxtiff#{$DEBUGPOSTFIX}.lib", "#$WXLIBDIR/wxbase26#{$DEBUGPOSTFIX}.lib", "#$WXLIBDIR/wxmsw26#{$DEBUGPOSTFIX}_adv.lib", "#$WXLIBDIR/wxmsw26#{$DEBUGPOSTFIX}_xrc.lib", "#$WXLIBDIR/wxbase26#{$DEBUGPOSTFIX}_xml.lib", "#$WXLIBDIR/wxexpat#{$DEBUGPOSTFIX}.lib", $WXLIB,].join('' '') $extra_libs = [ "gdi32.lib", "winspool.lib", "comdlg32.lib", "shell32.lib", "ole32.lib", "oleaut32.lib", "uuid.lib", "odbc32.lib ", "odbccp32.lib", "comctl32.lib", "rpcrt4.lib", "winmm.lib","#{Config::TOPDIR}/lib/msvcrt-ruby18.lib"].join('' '') $extra_objs = "swig/wx.res" rule(''.res'' => ''.rc'') do | t | sh("rc -I#$WXINC #{t.prerequisites}") end
Roy Sutton wrote:> I have updated the ''How to add a new class'' Wiki page with a few > clarifications that should help people who are doing this for the first > time.Great.> Now that I''ve got all this working, does anyone have any suggestions on > where I should focus my (somewhat limited) efforts? Is there any > particular Windows-specific testing I can do?If nothing else, running each of the samples would be a good start.> Attached is my modified rakemswin.rb file. I can''t promise my changes > reflect what was anticipated. In particular, I think that the file > should try to detect the WxWidgets build number so that 26 is not > hard-coded into the file as it is now. Perhaps even smarter would be to > just slurp up all the .lib names from the target lib directory, allowing > for new libs as they might appear.I''ll try to reconcile this with what Sean Long has sent in. I don''t have a Windows box myself, and he does, so I have pretty much been trusting what he sends. Thanks for your help! Kevin
Roy Sutton wrote:> Attached is my modified rakemswin.rb file. I can''t promise my changes > reflect what was anticipated. In particular, I think that the file > should try to detect the WxWidgets build number so that 26 is not > hard-coded into the file as it is now. Perhaps even smarter would be to > just slurp up all the .lib names from the target lib directory, allowing > for new libs as they might appear.I really want to hear from other MSWin users about what the rakemswin.rb file should look like before I make any changes. I suspect part of the difference is that Sean is using a "monolithic" wx library, and you have the new-style modular version. I would love the rakefile to auto-detect which you have, and do the right thing. After all, part of the beauty of rakefiles is that they are ruby code, so detecting should be a snap. I also totally agree about the version autodetection. We use the version in several places, so I would like to see rakemswin.rb set $wx_version in a way that matches what wx-config sets it to (e.g. "2.5.3"). Thanks, Kevin
> I really want to hear from other MSWin users about what the rakemswin.rb > file should look like before I make any changes. I suspect part of the > difference is that Sean is using a "monolithic" wx library, and you have > the new-style modular version.Actually if you look in extconf.rb on Windows the modular version is used look for the lines like: $WXLIB = "#$WXLIBDIR/wxbase26#{$DEBUG_BUILDPOSTFIX}.lib" $WXLIB += " #$WXLIBDIR/wxbase26#{$DEBUG_BUILDPOSTFIX}_net.lib" etc.> I would love the rakefile to auto-detect > which you have, and do the right thing. After all, part of the beauty of > rakefiles is that they are ruby code, so detecting should be a snap.The main problem with Windows is that it does not have the wx-config script like OS X and Linux, so we will have to do this in a rakefile. Sean
Kevin Smith
2005-Jul-30 17:33 UTC
[Wxruby-users] wxruby2 and extconf.rb (was: Compiling on WinXP, MSVC)
Sean Long wrote:> The main problem with Windows is that it does not have the wx-config > script like OS X and Linux, so we will have to do this in a rakefile.Exactly. Glancing at the extconf.rb, it looks it is doing almost exactly what rakemswin.rb already is doing (or needs to do). Unless there''s some magic in extconf.rb that can''t happen in rakemswin.rb, I *really* want to get rid of extconf.rb. If it really is necessary for some reason to keep extconf.rb, I want to move it out of src/, probably up to the project root directory. Let me know what you think. I also just now noticed that there is a version-script file in src/. It looks like Nick checked it in a long time ago, but I can''t see where it is used. I also want to delete that, or find a better home for it. Kevin
Apparently Analagous Threads
- Patch for Unicode on windows
- [884] branches/wxruby2/wxwidgets_282/rake/rakemswin.rb: Compile flag fixes for Windows/Wx 2.8 (Artur Kuptel)
- [975] branches/wxruby2/wxwidgets_282/rake/rakemswin.rb: Correct spacing for link command; remove odbc and db_table which aren''t
- Rake patch
- Windows build?