Author Topic: Apple app notarisation  (Read 830 times)

Cristian1980

  • Posts: 67
Apple app notarisation
« on: 10 May '19 - 16:12 »
Hello,

Apple will require for all apps running on OSX to be notarised in order to run, more details about this here: https://developer.apple.com/documentation/security/notarizing_your_app_before_distribution
Quote
Beginning in macOS 10.14.5, all new or updated kernel extensions and all software from developers new to distributing with Developer ID must be notarized in order to run. In a future version of macOS, notarization will be required by default for all software.
Note the latest released macOS is 10.14.4

This will be a requirement no matter how you distribute your app.
So while trying to prepare for this, I am getting an error about various bass libs that are compiled using an older SDK than 10.9(currently 10.6 seems to be used by BASS libraries).

Is it possible to have bass libraries compiled with 10.9 SDK or newer?

Bellow is the error message reported by apple notarisation service(I changed some IDs):

Quote
{
  "logFormatVersion": 1,
  "jobId": "951c1833-f104-4273-9aa6-XXXXXXXXX”,
  "status": "Invalid",
  "statusSummary": "Archive contains critical validation errors",
  "statusCode": 4000,
  "archiveFilename": "CoolApp.app.zip",
  "uploadDate": "2019-05-10T14:34:43Z",
  "sha256": "3e39baf9298fadc432adcd31873a61b71b6100a65d266ca5ec677XXXXXXXX”,
  "ticketContents": null,
  "issues": [
    {
      "severity": "error",
      "code": null,
      "path": "CoolApp.app.zip/CoolApp.app/Contents/MacOS/plugins/libbassflac.dylib",
      "message": "The binary uses an SDK older than the 10.9 SDK.",
      "docUrl": null,
      "architecture": "i386"
    },
    {
      "severity": "error",
      "code": null,
      "path": "CoolApp.app.zip/CoolApp.app/Contents/MacOS/plugins/libbassflac.dylib",
      "message": "The binary uses an SDK older than the 10.9 SDK.",
      "docUrl": null,
      "architecture": "x86_64"
    },
    {
      "severity": "error",
      "code": null,
      "path": "CoolApp.app.zip/CoolApp.app/Contents/Frameworks/libbassmix.dylib",
      "message": "The binary uses an SDK older than the 10.9 SDK.",
      "docUrl": null,
      "architecture": "i386"
    },
    {
      "severity": "error",
      "code": null,
      "path": "CoolApp.app.zip/CoolApp.app/Contents/Frameworks/libbassmix.dylib",
      "message": "The binary uses an SDK older than the 10.9 SDK.",
      "docUrl": null,
      "architecture": "x86_64"
    },
    {
      "severity": "error",
      "code": null,
      "path": "CoolApp.app.zip/CoolApp.app/Contents/Frameworks/libbass.dylib",
      "message": "The binary uses an SDK older than the 10.9 SDK.",
      "docUrl": null,
      "architecture": "i386"
    },
    {
      "severity": "error",
      "code": null,
      "path": "CoolApp.app.zip/CoolApp.app/Contents/Frameworks/libbass.dylib",
      "message": "The binary uses an SDK older than the 10.9 SDK.",
      "docUrl": null,
      "architecture": "x86_64"
    },
    {
      "severity": "error",
      "code": null,
      "path": "CoolApp.app.zip/CoolApp.app/Contents/Frameworks/libbassenc.dylib",
      "message": "The binary uses an SDK older than the 10.9 SDK.",
      "docUrl": null,
      "architecture": "i386"
    },
    {
      "severity": "error",
      "code": null,
      "path": "CoolApp.app.zip/CoolApp.app/Contents/Frameworks/libbassenc.dylib",
      "message": "The binary uses an SDK older than the 10.9 SDK.",
      "docUrl": null,
      "architecture": "x86_64"
    }
  ]
}

Thank you for any help,
Cristian

Ian @ un4seen

  • Administrator
  • Posts: 21991
Re: Apple app notarisation
« Reply #1 on: 10 May '19 - 17:35 »
I will look into this and then get back you, hopefully early next week.

Cristian1980

  • Posts: 67
Re: Apple app notarisation
« Reply #2 on: 16 May '19 - 15:59 »
Hello,

Any news on this?

Regards,
Cristian

Ian @ un4seen

  • Administrator
  • Posts: 21991
Re: Apple app notarisation
« Reply #3 on: 17 May '19 - 12:08 »
Sorry about the delay. Here now are some updates built with the 10.9 SDK for you to try:

   www.un4seen.com/stuff/bass-osx-test.zip

Let me know if you still have any trouble with them.

Cristian1980

  • Posts: 67
Re: Apple app notarisation
« Reply #4 on: 20 May '19 - 15:14 »
Thank you,

I was able to notarise my app with the libraries you gave me.

Best regards,
Cristian

Cristian1980

  • Posts: 67
Re: Apple app notarisation
« Reply #5 on: 21 May '19 - 12:49 »
Hello,

Can you please give me  libbass_fx.dylib?
For some reason the notarization succeeds on that file but the application crashes at runtime because that dylib is blocked from loading because it's unsigned.
otool says the fx lib is missing the SDK version .

Regards,
Cristian
« Last Edit: 21 May '19 - 13:00 by Cristian1980 »

Ian @ un4seen

  • Administrator
  • Posts: 21991
Re: Apple app notarisation
« Reply #6 on: 21 May '19 - 16:10 »
I was able to notarise my app with the libraries you gave me.

Great. The updates are up on the BASS page now, except for BASSmix as it's a not yet released version. The rest of the add-ons (except BASS_FX) have also been rebuilt with the 10.9 SDK.

Can you please give me  libbass_fx.dylib?
For some reason the notarization succeeds on that file but the application crashes at runtime because that dylib is blocked from loading because it's unsigned.
otool says the fx lib is missing the SDK version .

I have let the BASS_FX developer know about the issue. An update will hopefully be available soon.
« Last Edit: 21 May '19 - 17:30 by Ian @ un4seen »

Cristian1980

  • Posts: 67
Re: Apple app notarisation
« Reply #7 on: 30 May '19 - 13:03 »
Hello,

Any news on BASS FX for Mac built with 10.9 or later?
Latest version seems to be using SDK 10.8.

Best regards,
Cristian

(: JOBnik! :)

  • Posts: 1080
Re: Apple app notarisation
« Reply #8 on: 30 May '19 - 23:00 »

Cristian1980

  • Posts: 67
Re: Apple app notarisation
« Reply #9 on: 10 Jun '19 - 13:25 »
The BASS FX test version is working great.

Thank you,
Cristian

victor

  • Posts: 133
Re: Apple app notarisation
« Reply #10 on: 15 Jun '19 - 14:32 »
Hi ;D

Please test this version:
http://www.jobnik.org/BASS_FX/beta/bass_fx24123-osx-beta.zip
Thanks for the beta.
Unfortunatelly at compile it throws a error message "__BASS_FX_TempoCreate symbol not found for architecture x86_64"

Ian @ un4seen

  • Administrator
  • Posts: 21991
Re: Apple app notarisation
« Reply #11 on: 17 Jun '19 - 12:33 »
I do see the BASS_FX_TempoCreate function in the exported symbols, but it has a single underscore prefix (which is what OSX requires), not a double one (as in your error message). What programming language/compiler are you using, and are you using BASS_FX_TempoCreate or _BASS_FX_TempoCreate in your code? Does the error message go away when you switch back to the release libbass_fx.dylib file?

victor

  • Posts: 133
Re: Apple app notarisation
« Reply #12 on: 17 Jun '19 - 20:15 »
In the code i call BASS_FX_TempoCreate.
When i switch back to the released libbass_fx.dylib it get's rejected as using the older SDK 10.8.

victor

  • Posts: 133
Re: Apple app notarisation
« Reply #13 on: 17 Jun '19 - 20:25 »
Great. The updates are up on the BASS page now, except for BASSmix as it's a not yet released version. The rest of the add-ons (except BASS_FX) have also been rebuilt with the 10.9 SDK.
do you have a schedule for the release of BASSMix?

Ian @ un4seen

  • Administrator
  • Posts: 21991
Re: Apple app notarisation
« Reply #14 on: 18 Jun '19 - 14:51 »
In the code i call BASS_FX_TempoCreate.
When i switch back to the released libbass_fx.dylib it get's rejected as using the older SDK 10.8.

You mentioned in a PM that you're using Delphi. Are you using the BASS_FX.PAS file from the BASS_FX package or have you customised it to add underscores to the function names? I believe the latter is necessary only on x86. The BASS.PAS file for OSX has this:

Code: [Select]
{$IF Defined(MACOS) and Defined(CPUX86) and not Defined(EXTERNALLINKER)}
  // On Mac OSX, cdecl names have a preceeding underscore if x86 native backend.
  _PU = '_';
{$ELSE}
  _PU = '';
{$ENDIF}

do you have a schedule for the release of BASSMix?

Should be fairly soon. If you would like to try it now, the latest build/beta is available here:

   www.un4seen.com/stuff/libbassmix.dylib

victor

  • Posts: 133
Re: Apple app notarisation
« Reply #15 on: 18 Jun '19 - 15:52 »
thanks for the info and bassmix build - it works great!
« Last Edit: 18 Jun '19 - 23:24 by victor »