Xcode 7 warnings: object file was built for newer iOS version than being linked

前端 未结 6 742
后悔当初
后悔当初 2020-12-14 14:21

I recently integrated Google Cloud Messaging into an app targeting iOS 7 and iOS 8. Just grabbed Xcode 7 beta 4 to get started on iOS 9 support, and now I\'m getting an erro

相关标签:
6条回答
  • 2020-12-14 14:31

    My way to fix:

    1. Check "Deployment Target" is equal to Podfile "Platform"
    2. Delete DerivedData (/Users/yourUser/Library/Developer/Xcode)
    3. Pod install (Terminal)
    4. Clean/Build Project

    P.s. Can add more info if needed.

    0 讨论(0)
  • 2020-12-14 14:33

    It actually means that the Minimum Deployment Target of the included library was is to 8.3 and linking it with lower Minimum Deployment Target produces this warning.

    Library does not officially support targets lower than 8.3 in this case. While linking this library to target with ower Minimum Deployment Target will still work, it might produce crashes at runtime, if any 8.3 only code is executed on a device that runs older system than 8.3.

    There is a reason why developers set 8.3 as the minimum target and this warning should NOT be ignored. It might be harmless in this case, but it is not necessarily harmless in other cases!

    To fix these warnings, either use an older version of the library or set your Minimum deployment target to 8.3.

    0 讨论(0)
  • 2020-12-14 14:35

    In my case the reason was that I just updated pods then changed deployment target to lower then it was before and got such warnings. Running pod update again solves the issue.

    0 讨论(0)
  • 2020-12-14 14:39

    This just means that one of the libraries(Protocol Buffers here) GCM depends on was built for 8.3 although it's compatible with the min sdk version of GCM i.e. 7.0. XCode 7 is just more severe and reports it as a warning but it was always there just not being reported by previous versions.

    Overall this is just harmless, everything should work fine. Also there is not much that you can do unless Google patches GCM by building all of it's dependencies with the min sdk version (7.0).

    0 讨论(0)
  • 2020-12-14 14:50

    In targets/Build Settings/Linking/Other Linker Flags ,add

    -w

    silence the warning for me.

    0 讨论(0)
  • 2020-12-14 14:54

    FYI, the latest version of the relevant pods seems to have fixed this issue.

    Specifically, it looks like it was the upgrade of GoogleInterchangeUtilities from 1.0.0 to 1.1.0 that did the trick.

    If you're seeing this, a "pod update" should make it all better!

    0 讨论(0)
提交回复
热议问题