Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Question Play Console Error: "The native debug symbols contain an unexpected file"

Discussion in 'Android' started by Exarpo, Oct 3, 2020.

  1. Exarpo

    Exarpo

    Joined:
    Nov 25, 2019
    Posts:
    51
    So I uploaded my debug symbols file to Google Play Console and got this error:
    The native debug symbols contain an unexpected file: armeabi-v7a/libil2cpp.sym.
    The native debug symbols contain an unexpected file: armeabi-v7a/libil2cpp.so.debug.

    What does that mean? Why would unity add those two files if the Play console doesn't expect them? A thing maybe worth mentioning is that I used Proguard minification when doing this build.
    When I tried to upload the symbols file without minification it was too big for the console as it only accepts up to 300mb.
     
  2. Tomas1856

    Tomas1856

    Unity Technologies

    Joined:
    Sep 21, 2012
    Posts:
    3,875
    Try renaming libil2cpp.sym to libil2cpp.so, and only upload it. libil2cpp.so.debug contains full source code debugging information which Google Play Console doesn't use anyways
     
  3. Exarpo

    Exarpo

    Joined:
    Nov 25, 2019
    Posts:
    51
    I went ahead and deleted all files in the "armeabi-v7a" folder except the "libunity.sym.so" file and play console accepted it! :D Thank you so much, I've had so much trouble trying to upload the symbols file!
    EDIT: Read next reply too!
     
    Last edited: Oct 4, 2020
  4. Exarpo

    Exarpo

    Joined:
    Nov 25, 2019
    Posts:
    51
    Then I realized that I didn't actually do it the way you told me to xd, so I redid it in the way you described and the file is accepted, tho it also got accepted after doing what I described in my previous message which confuses me.
    All I uploaded this time is basically the symbol zip file including a folder called armeabi-v7a inluding libil2cpp.so (renamed libil2cpp.sym), could you explain why I had to rename the file???
    Also one mroe thing, the original symbols file actually conatined three files one of them being a .so file, maybe I should have kept that one instead of renaming some other to .so???
    upload_2020-10-4_11-58-0.png
     

    Attached Files:

    ageana likes this.
  5. Tomas1856

    Tomas1856

    Unity Technologies

    Joined:
    Sep 21, 2012
    Posts:
    3,875
    Symbol file name has to match the library name, otherwise there's a risk that some tool wont be able associate library with symbol file. In case of il2cpp, library name is libil2cpp.so, thus symbol file has to be named the same
     
    EduardRagimov likes this.
  6. Missile_

    Missile_

    Joined:
    Feb 9, 2014
    Posts:
    7
    Sorry to hijack the conversation but I also face the same issue and I have this error thrown by the Google Play Console:
    The native debug symbols contain an unexpected file: armeabi-v7a\libunity.sym.so.
    The native debug symbols contain an unexpected file: armeabi-v7a\libil2cpp.sym.so.
    The native debug symbols contain an unexpected file: armeabi-v7a\libil2cpp.dbg.so.
    The native debug symbols contain an unexpected file: arm64-v8a\libunity.sym.so.
    The native debug symbols contain an unexpected file: arm64-v8a\libil2cpp.sym.so.
    The native debug symbols contain an unexpected file: arm64-v8a\libil2cpp.dbg.so.
    T
    he naming is different from the OP's post so I need some help. Thanks.
     
  7. Tomas1856

    Tomas1856

    Unity Technologies

    Joined:
    Sep 21, 2012
    Posts:
    3,875
    Rename libunity.sym.so -> libunity.so, libil2cpp.sym.so -> libil2cpp.so. Delete everything else
     
  8. tessellation

    tessellation

    Joined:
    Aug 11, 2015
    Posts:
    390
    This thread was helpful, but my problem is that Google Play doesn't allow you to manually upload native debug symbols that are greater than 300 MB, and even my relatively simple mobile app has libil2cpp.so of 409MB for ARM64 and 353MB for ARMv7a. Any suggestions or work-arounds?
     
  9. Noisecrime

    Noisecrime

    Joined:
    Apr 7, 2010
    Posts:
    2,050
    Just zip them up. If those are already compressed file sizes then i'm not sure, though see below if thats zipped from Unity as it has low level compression.

    Couple of notes
    Its unclear from your description, but for me in Unity 2018, it will zip all these files into a single file that has the name in the following format which might be important to maintain.

    <apk name>-<product/bundle version>-v<build number>.symbols.zip
    e.g. MyCoolApp-2.1.0-v11.symbols.zip

    Secondly the Unity generated zip is massive almost 1 GB compressed. However if you extract the folders within and then re-zip them using say 7zip via 'add to archive' and use the zip format with high level compression setting it comes down to 260MB.

    So the answer should be to just zip the files, but you might have to make sure they are in the right format ( directories and naming ) as well as file name of the zip.
     
    Last edited: Jan 25, 2021
  10. Ardito92ITA

    Ardito92ITA

    Joined:
    Apr 1, 2014
    Posts:
    37
    I keep getting the same error:
    "The native debug symbols contain an invalid directory MyApp-1.0.2-v2.symbols. Only Android ABIs are supported."

    I changed the name of the files:
    MyApp-1.0.2-v2.symbols / arm64-v8a / libil2cpp.sym.so -> MyApp-1.0.2-v2.symbols / arm64-v8a / libil2cpp.so
    MyApp-1.0.2-v2.symbols / arm64-v8a / libunity.sym.so -> MyApp-1.0.2-v2.symbols / arm64-v8a / libunity.so
    I deleted:
    MyApp-1.0.2-v2.symbols / arm64-v8a / libil2cpp.dbg.so

    MyApp-1.0.2-v2.symbols / armeabi-v7a / libil2cpp.sym.so -> MyApp-1.0.2-v2.symbols / armeabi-v7a / libil2cpp.so
    MyApp-1.0.2-v2.symbols / armeabi-v7a / libunity.sym.so -> MyApp-1.0.2-v2.symbols / armeabi-v7a / libunity.so
    I deleted:
    MyApp-1.0.2-v2.symbols / arm64-v8a / libil2cpp.dbg.so

    I compress the folder "MyApp-1.0.2-v2.symbols", but I keep getting the same error:
    "The native debug symbols contain an invalid directory MyApp-1.0.2-v2.symbols. Only Android ABIs are supported."
     
    Last edited: Feb 19, 2021
  11. Tomas1856

    Tomas1856

    Unity Technologies

    Joined:
    Sep 21, 2012
    Posts:
    3,875
    It should be libil2cpp.so and libunity.so, in your reply the extension is .co ?
     
  12. Ardito92ITA

    Ardito92ITA

    Joined:
    Apr 1, 2014
    Posts:
    37
    I wrote wrong, but it is .so
    I edit the previous message
     
  13. Noisecrime

    Noisecrime

    Joined:
    Apr 7, 2010
    Posts:
    2,050
    Are you sure you are maintaining the correct directory structure?
    It would be easy to re-zip the folder and add an additional directory to the folder structure.
    e.g. instead of
    'MyApp-1.0.2-v2.symbols / arm64-v8a / libil2cpp.sym.so'
    you might end up with
    'MyApp-1.0.2-v2.symbols/MyApp-1.0.2-v2.symbols / arm64-v8a / libil2cpp.sym.so'

    Try unzipping both the original Unity symbols zip and then your own zip and check the full directory structures match.
     
    servalstar, xjjon and Ardito92ITA like this.
  14. Ardito92ITA

    Ardito92ITA

    Joined:
    Apr 1, 2014
    Posts:
    37

    You're right!!

    Thank you!! I love you!!
     
    Noisecrime likes this.
  15. suspect7

    suspect7

    Joined:
    Jan 24, 2016
    Posts:
    5
    I'm having this same issue! I get the "The native debug symbols contain an invalid directory AppName-1.32-v18.symbols. Only Android ABIs are supported."

    I've unzipped the folder, deleted the debug files, removed the ".sym" from the ".so" files, and have re-zipped. I've also confirmed that I'm mirroring the original file structure in the re-zipping process.

    Any advice or suggestions would be much appreciated!
     

    Attached Files:

  16. tessellation

    tessellation

    Joined:
    Aug 11, 2015
    Posts:
    390
    If anyone is on Mac OS, I wrote this little bash script to process the symbol file and recompress it with the correct names for the Google Play Store. Size is also smaller so it doesn't exceed their size limits (partly because *.so.debug is removed).
     

    Attached Files:

    aydiner and theancientchild like this.
  17. Sudden62

    Sudden62

    Joined:
    May 3, 2017
    Posts:
    11
    I've done the same things and still having this issue. Did you ever find a solution?
     
  18. tessellation

    tessellation

    Joined:
    Aug 11, 2015
    Posts:
    390
    Take a look at the bash script I provided and you can probably emulate what it's doing. In Unity 2020 the script changed a bit due to symbol files being renamed. In Unity 2021.2 there's an option to generate symbols without the debug files and this ZIP can be uploaded directly to Google Play.
     
  19. Sudden62

    Sudden62

    Joined:
    May 3, 2017
    Posts:
    11
    Eh I didn't notice anything else in the file to try. So it sounds like they've improved the symbols in Unity 2021.2? I'll upgrade and give it a shot