On 10-12-02 4:53 AM, Ulrich Hertlein wrote:
On 2/12/10 15:13 , Mike Wozniewski wrote:
On 2/12/10 12:49 , Mike Wozniewski wrote:
$ du -hs *.a
328K    libOpenThreads.a
240M    libosg.a
   51M    libosgAnimation.a
116M    libosgDB.a
   34M    libosgFX.a
   75M    libosgGA.a
   67M    libosgManipulator.a
   75M    libosgParticle.a
   25M    libosgPresentation.a
   69M    libosgShadow.a
   56M    libosgSim.a
   24M    libosgTerrain.a
   32M    libosgText.a
227M    libosgUtils.a
547M    libosgViewer.a
   31M    libosgVolume.a
   92M    libosgWidget.a
What sort of a build is this?  Debug or release?  Device or simulator?
The numbers I'm getting from a release/simulator build (Xcode 3.2.3) are far 
lower:

5.5M    libosg.a
1.2M    libosgAnimation.a
1.7M    libosgDB.a
408K    libosgFX.a
1.2M    libosgGA.a
692K    libosgManipulator.a
848K    libosgParticle.a
484K    libosgPresentation.a
952K    libosgShadow.a
1020K    libosgSim.a
384K    libosgTerrain.a
616K    libosgText.a
3.1M    libosgUtil.a
1.2M    libosgViewer.a
448K    libosgVolume.a
744K    libosgWidget.a

This is a release/device build (Xcode 3.2.4), but oddly, the debug build is 
pretty
similar... just slightly larger (eg, 244M for libosg.a rather than 240M).
Remember that this is a *simulator* build, hence i386 architecture.
The armv6/v7 might explain a certain increase (CISC vs RISC; maybe x2?) but 
nothing this
massive.  Maybe another x2 for a universal build but this is still nowhere near 
what
you're seeing...

/ulrich

Hmm. Indeed, optimizing for arm6/7 cut the size in half, but I get a libosg.a of 133MB. So, I'm definitely confused. I'm building using Xcode. Are you using cmake instead?

I'm a bit at a loss here. I've tried playing with various optimization settings in Xcode, but the result is usually insignificant. It takes a long time to compile and verify too, so I'm curious if there's a way to compare settings somehow?

I'm not so great with Xcode, but a sample compilation call for me looks like this:

CompileC build/OSGIPhone.build/Debug-iphoneos/osg.build/Objects-normal/armv6/Node.o ../src/osg/Node.cpp normal armv6 c++ com.apple.compilers.gcc.4_2
cd /Users/mikewoz/src/osg-iphone/IPhone_Project
setenv LANG en_US.US-ASCII
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc-4.2 -x c++ -arch armv6 -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -O0 -Wreturn-type -Wunused-variable -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.2.sdk -mfix-and-continue -gdwarf-2 -mno-thumb -miphoneos-version-min=3.2 -iquote /Users/mikewoz/src/osg-iphone/IPhone_Project/build/OSGIPhone.build/Debug-iphoneos/osg.build/osg-generated-files.hmap -I/Users/mikewoz/src/osg-iphone/IPhone_Project/build/OSGIPhone.build/Debug-iphoneos/osg.build/osg-own-target-headers.hmap -I/Users/mikewoz/src/osg-iphone/IPhone_Project/build/OSGIPhone.build/Debug-iphoneos/osg.build/osg-all-target-headers.hmap -iquote /Users/mikewoz/src/osg-iphone/IPhone_Project/build/OSGIPhone.build/Debug-iphoneos/osg.build/osg-project-headers.hmap -F/Users/mikewoz/src/osg-iphone/IPhone_Project/build/Debug-iphoneos -I/Users/mikewoz/src/osg-iphone/IPhone_Project/build/Debug-iphoneos/include -I../include -I../../OpenThreads/include -Iconfig -I/Users/mikewoz/src/osg-iphone/IPhone_Project/build/OSGIPhone.build/Debug-iphoneos/osg.build/DerivedSources/armv6 -I/Users/mikewoz/src/osg-iphone/IPhone_Project/build/OSGIPhone.build/Debug-iphoneos/osg.build/DerivedSources -c /Users/mikewoz/src/osg-iphone/IPhone_Project/../src/osg/Node.cpp -o /Users/mikewoz/src/osg-iphone/IPhone_Project/build/OSGIPhone.build/Debug-iphoneos/osg.build/Objects-normal/armv6/Node.o

and linking looks like this:

Libtool build/Debug-iphoneos/libosg.a normal armv6
cd /Users/mikewoz/src/osg-iphone/IPhone_Project
setenv IPHONEOS_DEPLOYMENT_TARGET 3.2
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/libtool -static -arch_only armv6 -syslibroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.2.sdk -L/Users/mikewoz/src/osg-iphone/IPhone_Project/build/Debug-iphoneos -filelist /Users/mikewoz/src/osg-iphone/IPhone_Project/build/OSGIPhone.build/Debug-iphoneos/osg.build/Objects-normal/armv6/osg.LinkFileList -o /Users/mikewoz/src/osg-iphone/IPhone_Project/build/Debug-iphoneos/libosg.a

Would it be possible for someone to post theirs, so I can compare? ... it's the only idea I have right now.

Thanks,
Mike Wozniewski
_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to