• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: How to make the binaries smaller?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to make the binaries smaller?


  • Subject: Re: How to make the binaries smaller?
  • From: Vojtěch Meluzín <email@hidden>
  • Date: Mon, 07 Nov 2011 01:06:25 +0100

 
> Hi I'm just checking if someone knows how to make the plugin release binaries smaller. This is because Mac binaries are really big, and now having the universal ones containing both 32bit and 64bit versions it became huge... For example 16 MB per plugin. The thing is that Mac32 is even bigger than Win64, so I just wonder if there's a way to improve the situation. The truth is, that I partly think that it's because of the GCC compiler (as opposed to MSVC on Windows), which is just the best from all I tested, including Intel compiler. I had quite a few problems with code generated by Intel compiler, so I'm not using it on Mac.
>
> I'm currently using GCC, SDK 10.5, default hidden visibility, -fexceptions, -O2. Then after linking I use "strip -S -x" to remove the symbol names. I also use statically linked c++ libraries and additional libs, basically libpng, freetype, zlib - I had a really big issue after Apple released Snow leopard and some libraries went missing on some computers and stuff, so I kinda resigned on dynamic linking despite it would be advantageous in this matter.
>
> Any idea how to improve it?
>

What about using -Os or -Oz instead of -O2 ?

 -Os Optimize for size, but not at the expense of speed.  -Os enables all -O2 optimizations that do not typically increase code size.  However,
          instructions are chosen for best performance, regardless of size.  To optimize solely for size on Darwin, use -Oz (APPLE ONLY).

Also, make sure you enable deadcode stripping in the linker options.


I checked the -Os, in my case it resulted in smaller code, approximately -15%, but also slower code, say -5%, not much, but still.
How to enable the deadcode stripping? I thought the linkers do that always :).

Vojtech

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Coreaudio-api mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: How to make the binaries smaller?
      • From: Jean-Daniel Dupas <email@hidden>
References: 
 >How to make the binaries smaller? (From: Vojtěch Meluzín <email@hidden>)
 >Re: How to make the binaries smaller? (From: Jean-Daniel Dupas <email@hidden>)

  • Prev by Date: Re: Archives
  • Next by Date: Room types for Reverb2 effect AU on iOS
  • Previous by thread: Re: How to make the binaries smaller?
  • Next by thread: Re: How to make the binaries smaller?
  • Index(es):
    • Date
    • Thread