Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Voting for the Unity Awards are OPEN! We’re looking to celebrate creators across games, industry, film, and many more categories. Cast your vote now for all categories
    Dismiss Notice
  3. Dismiss Notice

[Solved]Android IL2CPP build reporting missing IOS identifiers in Facebook bulk CPP file

Discussion in 'Android' started by Kurt-Dekker, Apr 11, 2018.

  1. Kurt-Dekker

    Kurt-Dekker

    Joined:
    Mar 16, 2013
    Posts:
    36,599
    Turns out it was a stray library we had that was built improperly and referenced iOS identifiers when building for Android.

    No further action required. Thanks for your attention!

    Kurt

    --------------------------------------

    My original post follows:

    As title says, we're trying to build for Android using IL2CPP and getting missing IOS-sounding identifiers. This seems very suspect.

    The missing identifiers are things like:

    /Library/il2cpp_android_armeabi-v7a/il2cpp_cache/BD530ABD2D47D6AE8EE65D5D319CB81F.o: In function `IOSWrapper_IOSInit_m4207652966':
    /Temp/StagingArea/Il2Cpp/il2cppOutput/Bulk_Facebook.Unity_0.cpp:28816: undefined reference to `IOSInit'
    /Library/il2cpp_android_armeabi-v7a/il2cpp_cache/BD530ABD2D47D6AE8EE65D5D319CB81F.o: In function `IOSWrapper_IOSLogInWithReadPermissions_m1030316552':
    /Temp/StagingArea/Il2Cpp/il2cppOutput/Bulk_Facebook.Unity_0.cpp:28842: undefined reference to `IOSLogInWithReadPermissions'

    See complete file attached below.

    Any ideas what could be wrong? Googling so far for this hasn't enlightened me much.

    EDIT: UPDATE: Further checking verifies that the Unity installation and the NDK / SDK combo are fine: I can make a tiny project and build just fine with all the same settings. How can I track down why those IOS identifiers are being included in an Android build? I'm on a Mac so I'm not sure what the best DLL-browsing tool is. I suspect something in our FB DLL is hitting those identifiers but I'm not sure the easiest way to prove it, or better yet, fix it...

    Thanks,
    Kurt
     

    Attached Files:

    Last edited: Apr 12, 2018
  2. ayublin

    ayublin

    Joined:
    Sep 27, 2016
    Posts:
    2
    Hi @Kurt-Dekker,

    I am experiencing the same error, what was the library that caused this? The funny thing is, we have the exact same error, I suspected FB as well, but it's indeed used in the project, so I am unsure.

    Thanks!
     
  3. Kurt-Dekker

    Kurt-Dekker

    Joined:
    Mar 16, 2013
    Posts:
    36,599
    In our case it was our internal wrapper that was incorrect split apart: some IOS-specific identifiers were included in the base cross-platform DLL, because the library team never got around to finishing the Android port of the wrapper. Deleting it all served just fine for now until we move ahead with their completed wrappers.

    In your case, most likely it is a piece of iOS-only DLL that has incorrect import settings on it causing it to be included in the Android DLL as well.
     
    ayublin likes this.