[MonoTouch] Is default linker behavior in MonoDevelop/MonoTouch 1.2 now --nolink?
Jb Evain
jb at nurv.fr
Fri Oct 30 09:56:28 EDT 2009
Hey,
On 10/28/09, Ed Anuff <ed at anuff.com> wrote:
> Is there any time when we should choose "Link All
> Assemblies"? Or is this no longer recommended?
The original decision to disable the linker when building the debug
profile for the simulator, is to make the build faster. The linking
process is pretty heavy, as it has to dig into every single detail of
each assembly, multiple times, and does some heavy lifting of the
assemblies.
We're working on speeding things up.
Now, changing the default to «Link SDK assemblies» only, is to avoid
common issues, like removing default constructors and members of
serialized user types, making it easier for people to simply move
their code to MonoTouch.
If the application works only with «Don't Link», and has issues with
either Link SDK Assemblies or Link all assemblies, it's definitely a
bug that should be fixed. Please file a bug in bugzilla, with the
solution attached if possible (you can make attachments private).
The difference between «Link SDK Assembly only» and «Link All
Assemblies» is that, in the first case, not only we're not touching
your code, but we're also unable to perform a few optimizations. So
it's a trade-off between the work and the time to make it work with
«Link all assemblies», which is usually about specifying a few
[Preserve] attributes.
In any case, if you have to use «Don't link» to make your application
work, please do file a bug.
Thanks!
--
Jb Evain <jb at nurv.fr>
More information about the MonoTouch
mailing list