Snow Leopard:

Active forum thread with install instructions: http://springrts.com/phpbb/viewtopic.php?f=65&t=23455

The latest wxWidgets beta (2.9.x) seems now to compile correctly under Snow Leopard, though getting springlobby to work with it is a dreadful nightmare. That's as far as I get for now:

  • download the latest wxWidgets via svn (the Mac OS port is under active - almost daily - change). I'm using svn version 1.6.5 (shipping with Mac OS).
  • if you want springlobby to start, you'll have to edit the wxWidgets/src/common/wincmn.cpp file, and hack function wxWindowBase::GetFont() as follows:
    //    if ( !m_font.IsOk() )
    //    {
    //        wxASSERT_MSG( !m_hasFont, wxT("we have invalid explicit font?") );
            wxFont font = GetDefaultAttributes().font;
            if ( !font.IsOk() )
                font = GetClassDefaultAttributes().font;
            return font;
    //    }
    //    else
    //        return m_font;
    
  • configure wxWidgets as follows:
    ./configure --with-cocoa --with-macosx-version-min=10.6 --enable-debug-gdb --enable-debugreport  --without-subdirs
    

    (the 3 last flags are not necessary, though the 2 former may be useful if you feel like sending us debug info, while the latter should reduce build time substantially by not generating demos and samples)
  • run a make (better use the -jX option to run some stuff in parallel, just replace X by the number of cpu cores you have. Even with this it takes a long time, trust me, e.g. 20 minutes on a Late 2007 C2D 2GHz MBP).
  • Once built (hurray!), make sure to tell springlobby where to find your wx install (open CMakeCache.txt and set wxWidgets_CONFIG_EXECUTABLE:FILEPATH=/your/path/to/wxWidgets/wx-config, or pass this variable whilst calling cmake, using the '-D' switch).
  • Get the osx branch of SpringLobby, which should build both springlobby and springsettings apps fine.
  • You may now run the springlobby.app, and will receive several on-screen assertion errors, most of which you can discard using the "Cancel" button.
  • Once (if) you (manage to) get to the main interface, you should be able to connect to the lobby server, launch a local game or type commands in the server console.
  • Current issue: any command attempting to open a new window (e.g. a /join #channel) will crash the app, for some weird pointer-not-being-freed error. Therefore if you set springlobby to automatically join your favorite channel on startup, you might be frustrated by seeing it crash right after startup... you've been warned
  • Disclaimer: this is work in progress, a lot remains to be done, but we're finally getting somewhere... stay tuned !

Random Mac related issues

  • if no application bundle is build SpringLobby is unable to get focus. AFAIK it is a "feature" of MacOS X and apple's permanent wontfix.
  • there's no wxToggleButton in wxCarbon (yet?)
  • unitsync loading is a big issue

The other wiki page...

CompileOnMac delete/keep/merge/link?

We welcome anybody who has tried building SpringLobby on Mac to add to this page.