Hey Peter,
actually we always compiled AtomKraft with a more recent Boost than Nuke's one.
Currently we are using 1.46, statically linked.
When we precompile we use:
-fPIC -O3 -DNDEBUG -DBOOST_DISABLE_ASSERTS
So we do not need -fvisibility=hidden (which btw is gcc only).
AK uses:
date_time
filesystem
program_options
serialization
system
iostreams
thread
Cheers,
P.
--
paolo berto
jedi rock band lead
/*jupiter jazz*/ visual research — hong kong
www.jupiter-jazz.com
On Tue, Jul 5, 2011 at 2:08 PM, Peter Pearson <[email protected]> wrote:
> Hi,
>
> Just some info that might be helpful, regarding linking Boost into your
> plugins.
>
> Background:
> Nuke makes use of Boost 1.37, and statically links this into its main
> executable. These symbols (at least in 6.2 - for 6.3 we've tightened down
> what's in the symbol table for DDImage) are exposed in DDImage, and are
> obviously in the main Nuke executable as well, but generally Boost 1.37
> symbols get leaked, which means that there are issues when trying to use
> newer versions of Boost in a Nuke plugin, as the plugin gets compiled
> against the newer headers, but at runtime, it picks up the symbols within
> Nuke itself for the older version, and more often than not crashes, due to
> ABI differences.
>
> I've done a bit of investigation regarding building NDK plugins with newer
> versions of Boost (1.43 in this case), and for Linux at least, I've managed
> to come up with a way to build plugins so that they can use newer versions
> of Boost successfully.
>
> Essentially, it's simply linking statically to Boost when linking your
> plugin, however, the Boost lib you're linking in (the whole of Boost
> effectively) needs to have been built with: -fvisibility=hidden -fPIC
>
> I've only tried this under Linux 64 with Nuke 6.2 and 6.3, so on other
> platforms, I'm not sure what the situation's like, but hopefully this
> information will be useful.
>
> Peter
> --
> Peter Pearson, Software Engineer
> The Foundry, 6th Floor, The Communications Building,
> 48 Leicester Square, London, UK, WC2H 7LT
> Tel: +44 (0)20 7434 0449 - Fax: +44 (0)20 7434 1550
> Web: www.thefoundry.co.uk
>
> The Foundry Visionmongers Ltd.
> Registered in England and Wales No: 4642027
> _______________________________________________
> Nuke-dev mailing list
> [email protected], http://forums.thefoundry.co.uk/
> http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev
>
_______________________________________________
Nuke-dev mailing list
[email protected], http://forums.thefoundry.co.uk/
http://support.thefoundry.co.uk/cgi-bin/mailman/listinfo/nuke-dev