[vos-d] VOS 0.23.0-pre3 released

Peter Amstutz tetron at interreality.org
Mon Apr 3 11:22:54 EDT 2006


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Mon, 3 Apr 2006, Karsten Otto wrote:

> Hello,
>
> quick report on giving pre3 a spin on the Mac:
>
> - vos compiled nicely without a hitch, yay!
>  well, nearly: omnivos and mesh plugins still compile to .so instead of 
> .bundle,
>  so they are not really usable. Oh well... nothing a few symlinks cannot 
> cure.

Okay.  This is just what automake wants to do, perhaps we will need a 
custom build step to rename the .so files to .bundle on the mac.

> - crystalspace snapshot compiled nicely after "the usual procedure", i.e.
>  export CPPFLAGS=-I/sw/include
>  export CXXFLAGS=-I/sw/include
>  export LDFLAGS=-L/sw/lib
>  (seems nobody likes the fink default install dir, sigh)
>  export PKG_CONFIG_PATH=$VOS
>  (I am too lazy to use all the -with-metaobject*=... flags)
>  export PATH=$WXMAC/osx-build
>  (use wx-config of my own flaky wxMac instead of flaky XCode wxMac... sigh)

The --with-metaobject_a3dl flag mainly exists to support mingw, which 
doesn't have pkg-config.  Not a problem on the Mac.

> -  vos-browser failed to build *sniff*.
>   plain terangreal needs -lircclient in final linking, adding this manually 
> worked.
>   wxterangreal fails with obscure (to me) errors:
>
> mainframe.cc: In member function 'void 
> TerWxMainFrame::loadWorldFromFile(wxString&)':
> mainframe.cc:490: error: ambiguous overload for 'operator!=' in 
> '#'obj_type_ref' not supported by dump_expr#<expression error>() != ""'
> /usr/include/wx-2.5/wx/string.h:1452: note: candidates are: bool 
> operator!=(const wxString&, const wxString&) <near match>
> /usr/include/wx-2.5/wx/string.h:1456: note:                 bool 
> operator!=(const wxChar*, const wxString&) <near match>
> /usr/include/wx-2.5/wx/string.h:1488: note:                 bool 
> operator!=(wxChar, const wxString&) <near match>
> /usr/include/wx-2.5/wx/string.h:1489: note:                 bool 
> operator!=(const wxString&, wxChar) <near match>
> /usr/include/wx-2.5/wx/string.h:1496: note:                 bool 
> operator!=(const wxString&, const wxWCharBuffer&) <near match>
> /usr/include/wx-2.5/wx/longlong.h:872: note:                 bool 
> operator!=(long int, const wxLongLong&) <near match>
> /usr/include/wx-2.5/wx/longlong.h:885: note:                 bool 
> operator!=(long unsigned int, const wxULongLong&) <near match>
> make: *** [wxterangreal-mainframe.o] Error 1
>
> Any suggestions?

Hmm.  Try changing:

490   if(urlbox->GetValue() != "") {

to

490   if(urlbox->GetValue() != wxT("")) {

It would seem that unicode incompatibility (which is implemented slightly 
differently on every platform) has reared it's ugly head once again. 
Basically, on some platforms wxChar is a wide char with UTF16 encoding, on 
other platforms (like GTK) it is a normal 8-bit char with UTF8 encoding. 
Of course, normal C strings look a lot like UTF8 encoding so those work, 
but when you move that code to a wide-char using platform it blows up.

[   Peter Amstutz   ][ tetron at interreality.org ][ piamstutz at anteon.com  ]
[Lead Programmer][Interreality Project][Virtual Reality for the Internet]
[ VOS: Next Generation Internet Communication][ http://interreality.org ]
[ http://interreality.org/~tetron ][ pgpkey:  pgpkeys.mit.edu  18C21DF7 ]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)

iD8DBQFEMT3RaeHUyhjCHfcRAs1gAJ0eJH7QwErCsQ4cKA6fvOHEE9FIggCgjZe9
yzz6lbvM9IpV0haH6KFMEmc=
=tkhs
-----END PGP SIGNATURE-----




More information about the vos-d mailing list