I have multiple versions of Xcode installed. I can build my project against older iOS versions by launching old Xcode. But how could I use newer Xcode versions to build agai
This became harder in Xcode 3.2.5 (iOS 4.2.1) as the separate "Base SDK" values for Device and Simulator are replaced with a single "iOS SDK".
See my post in Xcode/Simulator: How to run older iOS version? for details on how to access older Simulator SDK versions in this latest Xcode.
To make an application target that runs on multiple versions of iOS is relatively simple: Set the “Base SDK” in your projects settings to the newest version number of iOS whose features you may want. Set the “iPhone OS Deployment Target” to the oldest version number of iOS that you will support
you will need to install older versions of xcode since the newer simulator will only support the newer ios versions
http://developer.apple.com/library/mac/#documentation/Xcode/Conceptual/XcodeCoexistence/Contents/Resources/en.lproj/Details/Details.html
I think you should always build using the latest SDK and just set the deployment target to the appropriate version. To ensure your app runs correctly, check everything carefully on all versions and besides check the documentation if the APIs you are using have changed / removed / been deprecated in the different versions of the SDK!