If you use the latest Xcode and want that your app works on 3.x devices, you should read http://stackoverflow.com/questions/4198676/warning-iphone-apps-should-include-an-armv6-architecture-even-with-build-config (http://stackoverflow.com/questions/4198676/warning-iphone-apps-should-include-an-armv6-architecture-even-with-build-config) and http://theunemployedprogrammer.blogspot.com.es/2011/11/dyld-symbol-not-found.html (http://theunemployedprogrammer.blogspot.com.es/2011/11/dyld-symbol-not-found.html) (ignore de comment).
So you have to set manually the armv6 in architectures (project settings) and add '-weak_library /usr/lib/libSystem.B.dylib' to Build Settings->Linking->Other Link Flags.
The problem is that it doesn't warn you at compile time, it compiles fine (so happily), but is in runtime when it crashes. So be careful.
graet find thx