To see if the two versions are compatible, cmpdylib first verifies that newLibrary was built for all of the architectures that oldLibrary was built for. If so, for each architecture, it checks to see if the global symbols defined in oldLibrary are still defined in newLibrary. It then looks for new symbols, symbols defined in newLibrary that are not defined in oldLibrary. If it finds new symbols, it compares the compatibility version numbers of the two libraries. If the compatibility version number of newLibrary is greater than oldLibrary , the libraries are still compatible. If the compatibility version number is the same or less, the libraries are incompatible.
oldLibrary The older version of the library.
newLibrary The newer version of the library.
cmpdylib /System/Library/Frameworks/Foundation.framework/Foundation Foundation_proj/Foundation
cmpdylib: file: Foundation_proj/Foundation does not contain architecture: ppc
cmpdylib: new dynamic shared library: Foundation_proj/Foundation does not contain architecture ppc