APPLE submission problem with AOT compilation

RogisterAlainRogisterAlain Rogister AlainBEBeta ✭✭✭

I have a problem when I submit my application to APPLE and compile it with -aot = full. I have the following errors:

ERROR ITMS-90135: "The executable could not be re-signed for submission to the App Store."

ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' Invalid bundle: [medinect.offimed.be.pkg / Payload / Medinect.app / Contents / MonoBundle / BouncyCastle.CryptoExt.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed .be '. "

ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' Invalid bundle: [medinect.offimed.be.pkg / Payload / Medinect.app / Contents / MonoBundle / DLLMedinect.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be '. "

...

If I do not compile it in aot = full, it passes but it does not help me because my application is much more stable.

What should I do ?

I specify that my application is compiled with Link All and the following options:

--aot = all --link_flags = "- force_load libsqlcipher.a -framework Security -force_load eID-SDK -framework PCSC" --registrar: dynamic

Alain

Posts

  • RogisterAlainRogisterAlain Rogister Alain BEBeta ✭✭✭

    Chris,

    I need you help !!!!

  • ChrisHamonsChrisHamons Chris Hamons USXamarin Team Xamurai
    Invalid bundle: [medinect.offimed.be.pkg / Payload / Medinect.app / Contents / MonoBundle / BouncyCastle.CryptoExt.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed .be '. "
    

    It sounds like AOTing BouncyCastle somehow creating something with a bundle id Apple does not like.

    A few ideas off the top of my head:

    • If you don't want to be shipping debug symbols, just delete the dsym from the bundle before submitting (Are you trying to submit a debug build?)
    • You could also skip AOTing the assemblies that it is yelling about with something like --aot:full,-BouncyCastle.CryptoExt.dll,-DLLMedinect.dll
  • RogisterAlainRogisterAlain Rogister Alain BEBeta ✭✭✭

    Chris,

    I do not understand. I compile well in release mode without debug information.

    here is the information I put in the compilation options :smile:

    --aot = all --link_flags = "- force_load libsqlcipher.a -framework Security -force_load eID-SDK -framework PCSC" --registrar: dynamic

    If I do not put AOT = full, it passes without problem to APPLE but I would like to put my application in AOT.

    Looks in the errors below, it looks like all references have a problem (even Xamarin.Mac.dll)

    What should I do ?

    ERROR ITMS-90135: "The executable could not be re-signed for submission to the App Store. The app may have been built or signed with non-compliant or pre-release tools."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/BouncyCastle.CryptoExt.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/DLLMedinect.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/eIDKSDK.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/GlobalTools.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/I18N.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/I18N.West.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/KmehrLib.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/LaboLib.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Medinect.exe.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/MedinectSQLLib.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Microsoft.CSharp.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Mono.Data.Sqlcipher-Mac.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Mono.Security.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/mscorlib.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Newtonsoft.Json.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/OpenTK.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/OxyPlot.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/OxyPlot.Xamarin.Mac.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Rebex.Common.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Rebex.Ftp.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Rebex.Networking.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Rebex.Zip.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/StructuresLib.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Core.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Data.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Net.Http.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Numerics.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Runtime.Serialization.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.ServiceModel.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.ServiceModel.Internals.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Transactions.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Web.Services.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Xml.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/System.Xml.Linq.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/TranslationLib.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Xamarin.Insights.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."
    ERROR ITMS-90278: "Invalid Bundle. The application bundle may not contain tools or frameworks provided by Apple, or using bundle identifiers in the 'com.apple.' namespace. Invalid bundle: [medinect.offimed.be.pkg/Payload/Medinect.app/Contents/MonoBundle/Xamarin.Mac.dll.dylib.dSYM], with bundle identifier 'com.apple.xcode.dsym.medinect.offimed.be'."

  • RogisterAlainRogisterAlain Rogister Alain BEBeta ✭✭✭

    Chris,

    HELP, HELP !!!

    I removed the DSYM manually and there, it goes to APPLE but I receive this message again when I put registrar: dynamic.

    I do not understand why it generates DSYMs

    I MUST absolvely publish my application.

    help !!!

    Dear developer,

    We have discovered one or more issues with your recent delivery for "Medinect". To process your delivery, the following issues must be corrected:

    Deprecated API Usage - Apple no longer accepts submissions of apps that use QuickTime or QTKit APIs.

    Once these issues have been corrected, you can then redeliver the corrected binary.

    Regards,

    The App Store team

  • RogisterAlainRogisterAlain Rogister Alain BEBeta ✭✭✭

    If I do not compile in AOT: all, there is no DSYM file in the content of the application. it means that it is AOT that generates DSYMs.

  • RogisterAlainRogisterAlain Rogister Alain BEBeta ✭✭✭

    I posted my application without AOT and I still have an APPLE rejection with this error:

    Deprecated API Usage - QuickTime or QTKit APIs.

    I put --registrar: dynamic but still the same error.

    Please tell me what to do ?

  • ChrisHamonsChrisHamons Chris Hamons USXamarin Team Xamurai

    @RogisterAlain - The forums are not a channel for private immediate support. The XM community, including myself are happy to assist and answer questions, but spamming a topic multiple times (while filing bugs) will not improve response time and is poor forum etiquette.

    You have posted 4 times since yesterday, and filed a bug as well. If you continue spamming at such a rate you may be banned from the forums.

    I am looking into the AOT issue now.

  • RogisterAlainRogisterAlain Rogister Alain BEBeta ✭✭✭

    Yes, I understand but there is no direct support at xamarin since the buyout by Microsoft. Therefore, how can we do otherwise than by the Forum or put a BUG?

    Here, it is important for us, we can no longer post our application at APPLE. (no problem for the application for IOS but for the application MAC, always this refusal of APPLE).

  • ChrisHamonsChrisHamons Chris Hamons USXamarin Team Xamurai
    edited September 21
    • The fact that AOT is dropping .dSYM folders in your MonoBundle is a bug. I've filed it here: https://bugzilla.xamarin.com/show_bug.cgi?id=59647
    • You can work around this by creating a CustomBuildActions.targets with this next to your csproj and importing it with these instructions.
    • If you are AOTing your application, it makes total sense that you are hitting QTKit without linking.

    Let me explain:

    • Xamarin.Mac.dll contains bindings for every single Apple API, which means it has references to them all.
    • If you use the dynamic registrar though, we don't have a "hard" reference to them that Apple catches and complains about.
    • However, if you AOT the assemblies, you are forcing compilation of every single bit of Xamarin.Mac.dll, creating that hard reference.

    There are a two solutions that come to mind:

    • Use --linkplatform if you are using the Full platform or one of the more fully featured linking options if Modern to strip out the bits of Xamarin.Mac.dll you aren't using, such as QTKit. Then AOT won't force them to be generated, since they will be gone by that point.
    • Don't use AOT and use the dynamic registrar, this we we never generated a QTKit reference for Apple to see.

    I will get back to you on your question about support.

  • RogisterAlainRogisterAlain Rogister Alain BEBeta ✭✭✭

    Chris,

    Thanks you did not read completely what I said.

    Since I had problems with AOT, I posted WITHOUT USING AOT and using registrar: dynamic and I still reject APPLE.

  • ChrisHamonsChrisHamons Chris Hamons USXamarin Team Xamurai

    It is possible their scanning has improved since the last time dynamic + no AOT worked.

    I would look into --linkplatform your application, as that was what the feature was developed for.

  • DominicNDominicN Dominic NA USForum Administrator, Xamarin Team, University Xamurai

    Hey @RogisterAlain. Chris reached out to me and let me know you wanted information on direct support. While the legacy email support directly through Xamarin you were familiar with in the past no longer exists, we still do offer email support. However, this is now done through Visual Studio support. There are still Xamarin professionals able to assist - only the route has changed.

    If you'd like to submit a ticket, please visit https://www.xamarin.com/support scroll down to the "Email Support" section, and follow the "Create an incident" link. This is the best way to ensure you get prompt, private help. As Chris indicated earlier, there are a number of us that look at and comment on the forums, but if you're looking for quick, dedicated support, you'll certainly want to stick to creating incidents.

    I hope this helps!

  • RogisterAlainRogisterAlain Rogister Alain BEBeta ✭✭✭

    Thanks Dominic,

    I'm happy to hear that there is still a support other than the forum. I'll go through that for the future.

    For my problem, I went through --aot: all --linkplatform and manually deleted the DSYM. Then I created the package I sent to APPLE and it's gone! Phew!

    Once done, I tried your solution to directly remove the DSYM at compilation but I have errors. I'll put it in the appropriate bug.

    Thank you so much for your help and sorry for the rush.

    Alain

  • ChrisHamonsChrisHamons Chris Hamons USXamarin Team Xamurai
    edited September 21

    @RogisterAlain The error you posted in the bug:

    https://gist.github.com/chamons/932336c10b93b17bb1ad37c02b3c9d04

    (in addition to being posted inline and not a pastebin or gist link) does not have sufficient context to point to the error. Can you please post (in a pastebin or gist) the build log section erroring.

Sign In or Register to comment.