Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fat binaries #1

Open
slodge opened this issue Oct 18, 2012 · 2 comments
Open

Fat binaries #1

slodge opened this issue Oct 18, 2012 · 2 comments

Comments

@slodge
Copy link

slodge commented Oct 18, 2012

I like the idea of Applicable :)

But I'm a bit worried that everything is currently going in one binary.

A problem I've seen is that if you include too much in one binary, then:

  1. It can cause problems with certification - e.g. with needing app store permissions for Camera even though the app doesn't use the camera api
  2. It can cause problems with code size - this is something I had big problems with for MvvmCross v1 - because you include so many apis then the MonoTouch linker generates more code than it needs to - leading to many MB of problems

So I'd like to see a smaller set of projects if possible.

And the dream is nuget too please :)

Stuart

@runegri
Copy link
Owner

runegri commented Oct 19, 2012

Hi and thanks for the comments!

I haven't given Applicable much attention lately, especially not after Xamarin published the Xamarin.Mobile library that offers some of the same features. (Location stuff).

I agree with both points, especially #1. Using the source instead of binaries would fix it, but still. I really should have thought of that one.

#2 surprises me. Won't the linker help us here by removing the unused code from Applicable? I never checked it, but that is how I assumed it worked...

But both issues are fixable, as you say, by splitting it into several smaller projects. Will look at it when I have some spare time. Hopefully soon. :-)

@slodge
Copy link
Author

slodge commented Oct 19, 2012

Ah - hadn't realised applicable was older than the last few months - understand now :)

On #2, to be fair to the linker.... I do turn the linker settings down a bit when I use MT. Lots of my code is Reflection-based and the linker is far too aggressive for my code to work - and there's too much code for me to go around adding the attribute to stop the linker removing it.

Thanks for the feedback - good luck!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants