-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On Fri, 10 Feb 2006, Reed Hedges wrote:
Hi Karsten, great to hear from you again!
...mesh link errors...
(1) Results from the fact that everything is compiled with the flag -
fvisibility=hidden,
which is a nice feature, but obviously there are a few missing API
exports in the code.
fix: add API export to libs/vos/extensions/revcontrol/versioned.hh
in the same manner as the other libs/vos/extension/* modules have, doh.
May also be necessary in other parts of the code.
I think that like Linux, nothing should be hidden. Why is -fvisibility=hidden
given? Where is that flag coming from? VOS? a pkg-config?
This flag has to do with which symbols in a library file are exported for
use in linking. By specifying the public .so/.dll API explicitly, it
reduces the size of the binary, speeds up linking/loading time, and helps
avoid namespace collisions between libraries.
- -fvisibility=hidden means all symbols are hidden by default unless
explicitly exported. The macros VOS_API, VUTIL_API etc are used to
declare which classes/functions are to be made public.
This is basically just the GCC version of __declspec(dllexport) which is
required for compiling DLLs on Windows.
The reason why VOS uses it on GCC now is because Crystal Space started
using it, which meant that the csvosa3dl plugin was being compiled with
it. With the csvosa3dl plugin compiled one way, and VOS itself compiled
another way, it broke stuff like exceptions rather badly. It made more
sense to fix VOS (to use this feature) than to struggle with CS to disable
it making VOS a special case.
[ Peter Amstutz ][ [EMAIL PROTECTED] ][ [EMAIL PROTECTED] ]
[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)
iD8DBQFD7TU+aeHUyhjCHfcRAqVrAJ9z7vh1VsxTTUPkkIzM02c956DhQQCglWQ8
kdb90dNBUk2EKKPN2dXeIMw=
=79PE
-----END PGP SIGNATURE-----
_______________________________________________
vos-d mailing list
vos-d@interreality.org
http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d