From Jim Grosbach on the Xcode mailing list, the linker switch -allow_sub_type_mismatches
should allow ld
to proceed with linking. And from Apple's ld
man pages:
-allow_sub_type_mismatches
Normally the linker considers different cpu-subtype for ARM
(e.g. armv4t and armv6) to be different different architec-
tures that cannot be mixed at build time. This option
relaxes that requirement, allowing you to mix object files
compiled for different ARM subtypes.
There's also a Changelog entry that details the environmental variable called LD_ALLOW_CPU_SUBTYPE_MISMATCHES
.
However, I found -allow_sub_type_mismatches
simply did not work on Xcode 4.5.2. Grepping the web reveals a few Apple RADAR's for -allow_sub_type_mismatches
. See, for example, radar://6134468.
Hopefully its fixed by now, but nothing surprises me when it comes to Apple and their defective software.