I find some of the "relevant" project settings a bit confusing.
Goal:
- I want my deployment app to be small (not 166 MB like it is now, more like the 6 MB it was with CodeWarrior). - I want crash logs to have symbols to aid in debugging crash reports from users
So I search for strip (XCode 2.2) and see a bunch of options and some seem almost to conflict with each other.
I'm curious if what I am doing is correct...
Dead Code Stripping. I have this checked ON (* see below regarding gfull) Don't Dead-strip inits and terms. OFF. Is that ok? Wouldn't I want them stripped if not used anywhere else? Deployment Postprocessing. ON Strip Linked Product. ON Use Separate Strip. OFF Strip Style. Debugging symbols. Additional Strip Flags. <<blank> Strip Debug Symbols During Copy. ON UNSTRIPPED_PRODUCT. Set to NO
Since Dead Code Striping says to be sure to use gfull, I search for gfull and find...
Level of Debug Symbols. I change it to All Symbols (gfull) as instructed.
And my binary is still 166 MB. What am i doing wrong?
edit... Hmm, I just did a clean build and now it's 9.5 MB. So that's good. But I'd like confirmation that what I've done above is correct :)
Bryan
On Sep 29, 2005, at 12:07 PM, Chris Espinosa wrote: On Sep 29, 2005, at 1:48 AM, Gerriet M. Denkmann wrote: How can I induce Xcode (2.0) to automatically strip the result of a Deployment build?
Check the "Deployment Postprocessing" and "Strip Linked Product" checkboxes in the target's Deployment configuration, and make sure
- DEPLOYMENT_POSTPROCESSING
- If this setting is turned on, then the product will be processed for deployment and release purposes — rather than for development and debugging purposes. As a result, the following operations will be performed on the built product:
- If STRIP_INSTALLED_PRODUCT is YES, then the produced binary will be stripped.
- Copy Files and Shell Script build phases set to “only run when installing” will be processed.
- The owner, group and mode of the produced files will be changed according to the relevant build settings.
- When performing an xcodebuild using the install build action, this setting will be set to YES for the duration of the build.
In general, you can do the following to answer such questions:
1) Choose "Edit Active Target" from the Project menu 2) Choose "All Configurations" and "All Settings from the popups in the Build tab 3) Enter a keyword, such as "strip", into the search bubble
All relevant project settings will be shown. If you select one, the explanatory text at the bottom of the inspector describes what the setting does. This is a pretty good way to figure out answers like this.
|