I had this problem when integrating Adobe Omniture's "AppMeasurement" library, which currently comes compiled for 3 architectures: libAppMeasurement-iOSSimulator.a, libAppMeasurement-iOSDevice.a, and libAppMeasurement-iOSDevice-armv7.a.
While the other answers here are substantially correct, I ended up having to go elsewhere to truly understand and then fix the problem.
Step 1. Understanding the issues
This blog post does a great job of explaining the overall issue. It gives start-to-finish instructions for solving the problem in Xcode 3. See below for Xcode 4.
Note: You might try skipping the bit where he says to add the static libraries and then delete them. The next time I do this, I'll probably just add the header file(s), then skip straight to editing Other Linker Flags.
Step 2. Conditional Build Settings in Xcode 4
This StackOverflow page explains the new way to set conditional build settings in Xcode 4. Tip: The text fields on the Build Settings tab are drag-&-drop enabled; once you have your conditional build setting ready for editing under Other Linker Flags, you can just drag the static library file right onto the text field and Xcode will automatically enter a (hopefully relative) path.
Here's a screenshot of my Other Linker Flags once I got the "missing required architecture i386" warning to go away with no build errors:
__
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…