max standalone crash on mac 10.8.2 after codesigning with entitlements


    Jan 02 2013 | 7:11 pm
    Hi,
    I'm trying to codesign a standalone app with entitlements for mac app store (to verify if it goes through or not). The problem I'm running into is that the app crashes on 10.8.2 after I codesign it with entitlements (the same codesigned file works on both 10.6.8 and 10.7.5)
    Signing the app by itself or entitlements + frameworks work fine, it crashes only after I codesign entitlements + app.
    ** I tried the same codesign procedure with the same entitlements file on a unity3d built app and it works as expected. Could it be something to do with max?
    Any ideas?
    Thanks

    • Jan 04 2013 | 8:07 am
      here's the crash report.
    • Jan 04 2013 | 12:41 pm
      I don't really know what I'm talking about, but it seems it is crashing when initializing the Core Audio devices.. I do wonder if this is somehow related to sandbox stuff. Does it behave the same way regardless of your Mac's security settings (i.e. if you set it to "Allow applications downloaded from: Anywhere" in System Preferences/Security & Privacy?
    • Jan 04 2013 | 3:20 pm
      No effect, still crashes.
    • Jan 04 2013 | 3:32 pm
      Do you have any non-built-in CoreAudio devices attached to your machine? If so, could you temporarily try disconnecting maybe? I'm grasping at straws....
    • Jan 04 2013 | 3:53 pm
      No, just the regular built-in and no externals or anything inside the patch. (the crash report is a test with an empty patch). I also tried if doing the build on 10.8.2 changed anything (I previously built on 10.6.8) but, no effect, still crashes.
      Can you try to reproduce the crash? Or anyone else with the dev certificates.
    • Jan 04 2013 | 4:06 pm
      Standalones that I have recently built (latest versions of M185 and Klee sequencers, http://defectiverecords.com) were each signed with my dev certificate, but I did not include any entitlements in those... So my guess (as you have found) is that the adding of the entitlements fouls things up. What entitlements are you granting the app?
    • Jan 04 2013 | 4:25 pm
      Signing just the app does not introduce the crash, just entitlements with app. I'm just granting the basic "com.apple.security.app-sandbox true". I don't think it's the entitlements file as the exact same procedure on unity3d built app works fine. Is there a way to sign them separately? ('codesign -f -s "3rd Party Mac Developer Application: xxx" --entitlements appname.entitlements' doesn't seem to work)
      This is the procedure I'm following (if someone could try to reproduce it) 1. build a standalone app (can be empty) 2. create the .entitlements file (appname.entitlements) and place it either in the same folder as the app or somewhere inside the .app contents (does not matter for the test)
      com.apple.security.app-sandbox
      3. codesign -f -s "3rd Party Mac Developer Application: xxx" --entitlements /.../appname.entitlements /.../appname.app 4. see if it crashes on 10.8.2
    • Jan 04 2013 | 5:40 pm
      OK, figured it out.
      Using your instructions, for me it crashed with the exact same crash but on 10.7.5.
      I then tried removing the non-Core Audio (e.g. ReWire, portaudio, nonrealtime) files from the /support/ad folder, and tried again. No go.
      Finally, I tried with an entitlements file with an audio-related privilege - and now it works fine. Try this for your entitlements file:
      
      
      
      	com.apple.security.app-sandbox
      	
      	com.apple.security.device.microphone
      	
      
      
      
    • Jan 04 2013 | 6:03 pm
      Yes, it works! Thanks a lot. Weird that here, on 10.7.5 it works without the additional line as well, crashing only on 10.8.2..
      In theory, I believe you should only include the entitlements you use in your app (in my case, I'm not really using the mic i/p) but.. hey, let's see what happens.
    • Jan 04 2013 | 6:42 pm
      Really eager to hear how you make out on the Store, keep us posted!
    • Jan 30 2013 | 10:49 pm
      All good, got aproved.
    • Jan 30 2013 | 10:50 pm
      Fantastic!! Please point us to the app to check it out... that's great news.
    • Jan 30 2013 | 10:52 pm
      Great news! Thanks for posting!
    • Jan 31 2013 | 10:01 pm
      Congratulations!! Max apps on the Mac App Store live on!
    • Mar 07 2013 | 8:19 pm
      Hi everyone, I am trying to upload an app to the app store, and thanks to the "Your Max Standalone on Mac App Store" article, i am getting somewhere! I signed everything i should, i think...and custom Info.plist. Took me while but everything ok. Made the .pkg but then, i tried to install and run the app and it crashed. The pre-pkg app.. or the max standalone, runs fine. Could it be the same problem with the entitlements that rarasmus had ? if so, how do i use the .entitlements? Thank you very much in advance, Nikolas
    • Mar 07 2013 | 11:54 pm
      Does seem like a different problem, but could be the same fundamental issue that rarasmus had.
      I would try following the same procedure that he outlined above to codesign your app, but use the .entitlements file that I specify above. Also, wat does your app do? That will influence what .entitlements your app will need....
    • Mar 08 2013 | 12:08 am
      it is a step sequencer. No audio input, just sample playback. I also use it with the rewire driver, does hat make any difference on what the .entitlements should include? I tried building the pkg, before to codesigning it with the .entitlements, but it crashed. The entitlement codesigning must be done to all ..mxo, frameworks etc.. or only the .app ? Sorry for the questions, but these things are unfamiliar to me.
    • Mar 08 2013 | 2:28 pm
      You need to sign the .app with .entitlements, as well as all the binaries inside, before packaging the .pkg. The binaries inside that I sign are:
      MaxAPI.framework MaxAudioAPI.framework ad_coreaudio.mxo setplugpath.mxo (I use this because I use vst~ in my app) coremidi.mxo
      You will likely have to sign the ReWire stuff as well.
    • Mar 08 2013 | 4:07 pm
      Did it all over again, patch build and signing. While signed, everything runs OK. Then, med the .pkg, and installed it to my mac. Double click... crash! It doesn't even shows on the screen. The menubar shown no items, only the app name, and after 5-6 seconds crashes. If anyone has the time or any thoughts about this situation would be much appreciated. Attached is the crash report.
    • Mar 08 2013 | 4:11 pm
      Really not sure what's going on then, sorry. From the crashlog, it seems like it's dying just after (or during?) making the menus....
    • Mar 08 2013 | 4:16 pm
      At least, that's a start! Thank for the help!
    • Mar 08 2013 | 4:25 pm
      well, i think i had just messed up the "maxinterfaces.json". Replaced and it seems to work alright! Thanks again!
    • Mar 08 2013 | 4:43 pm
      Cool, glad I could help!
    • Jun 15 2013 | 8:56 pm
      Hi Everyone, I have finished a LiveLooping app for the App store but I have some problems with the codesigning process in Terminal. I get this reply from Terminal when I try to codesign some of the Max Frameworks: " codesign -f -s “3rd: no identity found " Is it an error? If I enter the codesign command again it passes without reply. Strange!
      I am using the Terminal commands from the guide "YOUR MAX STANDALONE ON MAC APP STORE" and I have followed Dan Nigrins PDF about creating Standalones.
      I can create a package file and the installer works but the app is launching very slow after installation with the spinning beach ball spinning for minutes.
      /thomas
    • Jun 15 2013 | 9:13 pm
      This makes me think that it's not finding your codesigning identity - weird though that if you issue the command again it works... Are you sure you are using the exact name of your codesigning identity in the command?
    • Jun 15 2013 | 9:17 pm
      Oh, re: the app starting slowly - I think there might be a bug in the current Max distribution that causes standalones not to respect the status of the usesearchpath attribute for the standalone object; this makes your app search all app subfolders in your Applications folder for files. You can verify this by looking at the Max window in your application - if you have another Max-based application in your Applications folder, your app will likely see a conflict with several files from the other Max app.
    • Jun 15 2013 | 9:43 pm
      I have pasted the exact name from the developer certificate. The error shows only when I try to sign some of the Frameworks and not when I sign the App itself. Could it be the command line tools from Xcode that are causing the problem?
      I will check the Max window to see whether other Max based apps are causing the slow startup. I have several in the Applications folder: Audio Plugin Player, General MIDI Player and TapNTempo. But they all launch fast without the beachball
    • Jun 16 2013 | 12:20 am
      Weird - can you post the exact commands you are using? Maybe I can spot something that's different from what I've been doing.
      Re: those other apps starting up quickly - the bug (I think) was only introduced in the most recent versions of Max. So assuming (actually for my two, knowing) that those apps were built with earlier versions of Max that didn't have the bug - that explains it. I've reported the problem to Cycling, and hopefully will be addressed soon.
    • Jun 16 2013 | 10:18 am
      These are the commands I am using in Terminal: codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps ” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app
      codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/Frameworks/MaxAPI.framework/Versions/A
      codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/Frameworks/MaxAudioAPI.framework/Versions/A
      codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/support/ad/ad_coreaudio.mxo
      codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/support/mididrivers/coremidi.mxo
      codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/support/extensions/setplugpath.mxo
      productbuild \ --component /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app /Applications \ --sign "3rd Party Mac Developer Installer: boing productions and media aps" \ --product "/Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/Info.plist" LiveLooperOne.pkg
    • Jun 16 2013 | 10:23 am
      And this is how it looks in the Terminal window:
      Last login: Sat Jun 15 22:40:37 on ttys000 Thomass-MacBook-Pro:~ thomas$ codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps ” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app > > codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/Frameworks/MaxAPI.framework/Versions/A “3rd Party Mac Developer Application: boing productions and media aps ” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app
      codesign -f -s “3rd: no identity found Thomass-MacBook-Pro:~ thomas$ Thomass-MacBook-Pro:~ thomas$ codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/Frameworks/MaxAPI.framework/Versions/A > > codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/Frameworks/MaxAudioAPI.framework/Versions/A “3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/Frameworks/MaxAPI.framework/Versions/A
      codesign -f -s “3rd: no identity found Thomass-MacBook-Pro:~ thomas$ codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/support/ad/ad_coreaudio.mxo > > codesign -f -s “"3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/support/mididrivers/coremidi.mxo “3rd Party Mac Developer Application: boing productions and media aps” /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/support/ad/ad_coreaudio.mxo
      codesign -f -s “3rd: no identity found Thomass-MacBook-Pro:~ thomas$ Thomass-MacBook-Pro:~ thomas$ productbuild \ > --component /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app /Applications \ > --sign "3rd Party Mac Developer Installer: boing productions and media aps" \ > --product "/Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app/Contents/Info.plist" LiveLooperOne.pkg productbuild: Adding component at /Users/thomas/Documents/MaxFiles/thomasPatches/Apps/LiveLooper_1ch/LiveLooperOne.app productbuild: Signing product with identity "3rd Party Mac Developer Installer: boing productions and media aps (TZN8V6CWDU)" from keychain /Users/thomas/Library/Keychains/login.keychain productbuild: Adding certificate "Apple Worldwide Developer Relations Certification Authority" productbuild: Adding certificate "Apple Root CA" productbuild: Wrote product to LiveLooperOne.pkg productbuild: Supported OS versions: [10.5.0, ) Thomass-MacBook-Pro:~ thomas$
    • Jun 16 2013 | 10:38 am
      And another strange thing is that the standalone app creates temp folders in the Preferences folder containing all the externals used in the app. Should'nt these externals by encapsulated in the .mxf collective file? It seems that the standalone external has a bug as you mentioned.
      Thanks for your help so far, Dan :-)
    • Jun 16 2013 | 10:45 am
      Here is a jpg showing that all the externals used in my Standalone app is contained in the Apps Preferences folder.
    • Jun 16 2013 | 12:32 pm
      Not sure about the extra temp folder in the Preferences folder, but my guess is that it may have something to do with the codesigning?
      Re: that problem, I see two issues right away:
      1) In your first codesign command, you have an extra space at the end of your Identity, before the closing quote: codesign -f -s “”3rd Party Mac Developer Application: boing productions and media aps ”
      2) In all of your codesign commands, you have an extra leading set of quotes: codesign -f -s “”3rd....
      It should look like this instead: codesign -f -s “3rd Party Mac Developer Application: boing productions and media aps” .....
      Hope this helps!
    • Jun 16 2013 | 12:51 pm
      But I have actually copy/pasted the commands from the standalone article/tutorial: https://cycling74.com/2012/04/19/get-your-max-standalone-on-apple%E2%80%99s-mac-app-store/
      There are extra quotes on all the commands here and I have been wondering about that too. I will remove them and try again. Thanks!!
    • Jun 16 2013 | 5:58 pm
      Wow, I just noticed that for the first time, that's a mistake in the article/tutorial! I think it has to do with the formatting commands used in the article. I'll try to see if someone from Cycling can fix it...
    • Jun 16 2013 | 7:10 pm
      The codesign and productbuild process works now without errors after removing the extra set of quotes. So far so good :-) But now the .pkg file isn't working correctly since the app does'nt show up in /Applications after running the installer. Weird!
    • Jun 16 2013 | 7:40 pm
      I get this information from the installer log, when I try to install my App from the .pkg installer created in Terminal with productbuild after codesigning the app and frameworks. The App does'nt show up in in the Applications folder.
      16/06/13 20.49.03,466 Installer[1195] CoreAnimation: warning, deleted thread with uncommitted CATransaction; set CA_DEBUG_TRANSACTIONS=1 in environment to log backtraces. 16/06/13 20.49.05,883 Installer[1195] *** WARNING: -[NSImage compositeToPoint:operation:] is deprecated in MacOSX 10.8 and later. Please use -[NSImage drawAtPoint:fromRect:operation:fraction:] instead. 16/06/13 20.49.05,883 Installer[1195] *** WARNING: -[NSImage compositeToPoint:fromRect:operation:] is deprecated in MacOSX 10.8 and later. Please use -[NSImage drawAtPoint:fromRect:operation:fraction:] instead. 16/06/13 20.49.05,897 Installer[1195] *** WARNING: -[NSImage compositeToPoint:operation:fraction:] is deprecated in MacOSX 10.8 and later. Please use -[NSImage drawAtPoint:fromRect:operation:fraction:] instead. 16/06/13 20.49.05,897 Installer[1195] *** WARNING: -[NSImage compositeToPoint:fromRect:operation:fraction:] is deprecated in MacOSX 10.8 and later. Please use -[NSImage drawAtPoint:fromRect:operation:fraction:] instead. 16/06/13 20.49.05,909 Installer[1195] CoreAnimation: warning, deleted thread with uncommitted CATransaction; set CA_DEBUG_TRANSACTIONS=1 in environment to log backtraces. 16/06/13 20.49.18,659 coreservicesd[24] Application App:"Installering" [ 0x0/0xef0ef] @ 0x0x7fdd12643d10 tried to be brought forward, but isn't in fPermittedFrontASNs ( ( ASN:0x0-0xf10f1:) ), so denying. 16/06/13 20.49.18,659 WindowServer[126] [cps/setfront] Failed setting the front application to Installering, psn 0x0-0xef0ef, securitySessionID=0x186a6, err=-13066 16/06/13 20.49.20,805 Installer[1195] CoreAnimation: warning, deleted thread with uncommitted CATransaction; set CA_DEBUG_TRANSACTIONS=1 in environment to log backtraces.
    • Jun 16 2013 | 8:53 pm
      I fixed it - it was a permissions problem...
    • Jun 16 2013 | 11:23 pm
      Great! So all is well now, right? Next stop, Mac App Store?
    • Jun 17 2013 | 12:18 pm
      Yeah, next stop Mac App Store. Thanks for your kind help and support:-) I will post a link when the app is up and running...
    • Jun 17 2013 | 5:34 pm
      Just a quick note to say that Cycling have fixed the extra quote marks that were present in the article/tutorial!
    • Jun 17 2013 | 5:57 pm
      Hi, i am trying to submit an app to the app store... Done codesigning and followed all the article instructions and the app got in line for review. I have uploaded it 5 times, and always they reject it because of the same problem. The app is a step sequencer with a drop menu which includes some basic rhythms. All saved in the same json as presets for pattrstorage. The user can either edit a rhythm and "save" it, or edit a rhythm and "save as" new rhythm with new name, added to the end of the list...
      First i can read the json, the rhythms are found as they review the app, but they say that they cant save or save as new rhythms. Both "save" and "save as" functions are done with the "writeagain" and then "readagain" message to pattrstorage. Should i change my saving approach?
      I include the json inside the bundle (not in the collective mxf), does the app have the permission to read-write files inside it's bundle ? I also have the entitlement "user-selected-files.read-write to TRUE.
      In my Macbook, trying it to a guest account it saves everything ok, yet at apple's iMacs doesn't. Is it because my guest account has more permissions?
      Any suggestions ? Sorry the lots of questions but i've been trying two months now and it gets very frustrating...
      Thank you very much in advance, Nikolas
    • Jun 17 2013 | 6:06 pm
      Nikolas, I believe your problem is that an app is not allowed to write to its own bundle. Instead, you need to write your .json file to the app's preferences location (I currently use ~/Library/Application Support/MY_APP_NAME/MyAppData.json or something like that).
    • Jun 17 2013 | 6:38 pm
      Thank for the info, I wasn't aware of that! To create the folder and place the json there I have to do it from the productbuid --component ?
    • Jun 17 2013 | 8:53 pm
      The folder is automatically created when you run your application for the first time, as Max puts other files that it needs there. So within your app, you just have to determine the correct path to that location. I use Jasch's 3rd party external "getpaths" for this task: http://www.jasch.ch/dl/
    • Jun 18 2013 | 11:06 am
      ok, thank you again Dan, for all the help and the link.
    • Jun 18 2013 | 11:23 am
      Hopefully, one last question: Do i need an entitlement to read/write to "~/Library/Application Support/MY_APP_NAME/MyAppData.json" or the app has the permission there anyway ?
    • Jun 18 2013 | 11:24 am
      No, the app has permission to write there by default.
    • Jun 18 2013 | 11:25 am
      Thank you again, like a million times!
    • Jul 02 2013 | 10:31 pm
      Finally made it thru! Accepted by App Store! Thanks again fir the support and info!
    • Jul 03 2013 | 1:59 pm
      Congratulations! Please post a link to the app on the store...
    • Jul 03 2013 | 2:10 pm
      Here it is:BeatLines
      More to come!! (Hopefully!!!) Thank you again!
    • Jul 03 2013 | 2:27 pm
      Looks fantastic, congratulations!
    • Jul 03 2013 | 2:36 pm
      seems like a slick UI, did you do your own gui objects ?
    • Jul 03 2013 | 3:34 pm
      Nope!, everything except the eighth note at the top left corner is max UI objects... with a lot of transparency!
    • Aug 17 2013 | 8:34 am
      LiveLooperOne is available at Mac App Store. Thanks for all the help and support, dear forum friends :-)
    • Aug 17 2013 | 12:12 pm
      Congratulations Thomas, looks great!!
    • Sep 22 2013 | 7:29 pm
      Hi to all, can anyone help to create the .pkg archive from my standalone..?
      I tried this: productbuild \ --component /Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA /Applications \ --sign 3rd Party Mac Developer Installer: Carlos David Perales Cejudo \ --product /Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA/Acoustbl/Contents/Info.plist Acoustbl.pkg
      And I get this: Usage: productbuild [--product ] {--component } Build product with a self-contained bundle, e.g. for the Mac App Store
      Usage: productbuild [options] --distribution [--package-path ] Build product with a distribution and the packages it references
      Usage: productbuild --synthesize [--product ] {--package } Synthesize and write a distribution from component packages
      See productbuild(1) for details.
      ....but I don't see any pkg archive... Any idea? thanks! C
    • Sep 22 2013 | 10:20 pm
      Hi Carlos, two things you should watch are: 1. your paths have spaces in them, so be sure to use quotes e.g. "/Path with Spaces/WoWapp" 2. If you copy pasted the commend, before the component, sign and product you should use a double dash "--" Hope it helps, Nikolas
    • Sep 22 2013 | 10:23 pm
      +1 for what Nikolas said!!
    • Sep 22 2013 | 10:24 pm
      just show, that the double dash becomes o long dash in the posts... so forget that!!
    • Sep 23 2013 | 8:00 am
      Many thanks..!, I got it. Now, flying to the moon... (I'll post my app to see your feedbacks..)
      cheers to all C
    • Sep 23 2013 | 8:32 am
      Ok. Not yet..., this is what i get. -Can't understand why i'm getting the signing error message. - I included my icns file at standalone script: "appicon...", do I have to include it manually..?, what's 512x512@2x?? -I'm fighting from the very beginning with bundle parameter, what i might do? -NVIDIA...!!!?!?!
      thanks again, C
    • Sep 23 2013 | 8:35 am
      here the image.
    • Sep 23 2013 | 9:00 am
      You also must codesign the Acoustbl.app bundle as well as the frameworks inside and all the .mxo. For the icon, you should look at the command iconutil that converts the one icns to all the necessary resolutions with the appropriate names. For the bundle identifier you must edit the info.plist inside the bundle before you codesign the app. It has various fields abou the version of the app. Initially the info.plist is the same as MAX.app uses, so use the existing info as a guide to input your info. At the comments of this article you will find a lot of helpful info, especially a comments by RAMASMUS explaines about the icon. Sorry I cannot be more helful now, I am in a hurry! I know its a pain in the a** the first time, but when you get the hand of it will all become a routine! Hope i helped a little, Good luck!!! Nikolas
    • Sep 23 2013 | 9:03 am
      As for the 512×512@2x, it is just the 1024x1024 named 512x512@2x.... The iconutil will create all the files for you bu one simple icns!!! (or .png)!! Yeay!!
    • Sep 23 2013 | 9:07 am
      yes, I have created one with the terminal. But, where I have to included?, which folder?, the same name and location for both icns? thanks
    • Sep 23 2013 | 11:57 am
      It's in the exact same place, and is same name: within your app bundle, /Contents/Resources/YourAppName.icns
      The file that iconutil creates is all that you need - you don't need two files.
    • Sep 23 2013 | 11:58 am
      It's in the exact same place, and is the same name: within your app bundle, /Contents/Resources/YourAppName.icns
      The file that iconutil creates is all that you need - you don't need two files.
      Also, if your successful in getting your app on the store, please post it in this thread...
    • Sep 24 2013 | 11:29 am
      Hi to all, I'm quite desperate on code-signing process.., i suspect that my main problem is the info.plist items. i receive these error when try to upload my package (attached the screenshots). I was trying to modify the "Bundle number" and "Bundle ID" values to my owns, at .plist files inside these error folders (jitter and Cg.framework) but doesn't work.
      Please could anyone help me? bests,
      C
    • Sep 24 2013 | 11:35 am
      (...by the way, I use the microphone and open/record files at computer user, so, something specific for .entitlements file?)
    • Sep 24 2013 | 12:51 pm
      use this entitlement "com.apple.security.files.user-selected.read-write" for the recorded files, but i think you should use the open/save dialog to let you do it. This is for the mic "com.apple.security.device.microphone"
      Here you will all the available entitlements...
      For the bundle id and number, open the max plist and replace exactly the numbers with your own. If there was 6.1.9 max version, put 1.0.0, not 1.0. I got some of these mistakes. You should probably change the "get info string" also!
      Nikolas
    • Sep 24 2013 | 1:50 pm
      Thank you Nikolas, now I have only one error to go. (just for posting: CFBundleExecutable error have been solved by adding manually a new parameter at both info.plist "Executable file - String - Cg" ... for example (just the name without .framework extension).
    • Sep 24 2013 | 2:03 pm
      So what is your remaining error, I've lost track.
    • Sep 24 2013 | 2:10 pm
      Oh, sorry..
      Here attached a screenshot.
      I guess I'm doing something wrong with codesign, but I can't figure it out. I get always the same "ambiguous" message at terminal:
      MacBook-Pro-de-Carlos:~ carlosdperales$ codesign -f -s "3rd Party Mac Developer Application: Carlos David Perales Cejudo" "/Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA/Acoustbl.app" 3rd Party Mac Developer Application: Carlos David Perales Cejudo: ambiguous (matches "3rd Party Mac Developer Application: Carlos David Perales Cejudo (NKL3RYDMY7)" and "3rd Party Mac Developer Application: Carlos David Perales Cejudo (NKL3RYDMY7)" in /Users/carlosdperales/Library/Keychains/login.keychain) MacBook-Pro-de-Carlos:~ carlosdperales$
    • Sep 24 2013 | 2:47 pm
      It seems as though you might have two duplicate certificates in your Keychain, and codesign can't figure out which one to use to sign your app with. I would use the Keychain Access app (in /Applications/Utilities), and maybe you'll see the duplicate there, and you would be able to delete one of them?
    • Sep 24 2013 | 2:52 pm
      Yes, you're absolutely right. I have removed the "older" one but still doesn't want to go.
      This is what I get:
      MacBook-Pro-de-Carlos:~ carlosdperales$ codesign -f -s "3rd Party Mac Developer Application: Carlos David Perales Cejudo" "/Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA/Acoustbl.app" codesign_allocate: for architecture i386 object: /Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA/Acoustbl.app/Contents/MacOS/Acoustbl malformed object (unknown load command 36) /Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA/Acoustbl.app: object file format unrecognized, invalid, or unsuitable MacBook-Pro-de-Carlos:~ carlosdperales$
    • Sep 24 2013 | 4:35 pm
      maybe try this before codesigning: export CODESIGN_ALLOCATE=”/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate
    • Sep 25 2013 | 11:26 am
      Hi, I can't get into this.., I've tried all kind of codesign stuff at terminal but always receive: "cannot find code object on disk".
      what's wrong in this?:
      codesign -f -s “3rd Party Mac Developer Application: Carlos David Perales Cejudo” “/Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA/Acoustbl.app”
    • Sep 25 2013 | 12:53 pm
      Is our Xcode up to date ? I had similar problems while codesigning max 6.1.3 standalones with Xcode 4.2 An upadte to 4.6 seemed to work... But requires to have Lion/Mountain Lion
    • Sep 25 2013 | 2:01 pm
      thanks Nikolas for your support. I'm using Xcode 4.6.3 on MacOS 10.7.5, and still doesn't work.
      Do I have to install some more certifies? Something wrong in my info.plist? The only one I can install is a .provisionprofile I downloaded from my developer profile site. Does it have anything to do with all of this? Thanks
    • Sep 25 2013 | 7:54 pm
      codesign -f -s “3rd Party Mac Developer Application: Carlos David Perales Cejudo” “/Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA/Acoustbl.app”
      Since the second file path you provide (to your app itself) does not have any spaces in it, I don't think it needs the quotes around it. Furthermore, what I *always* do when referencing file paths in the Terminal is just drag and drop the file onto the terminal - it automagically formts it the correct way.
    • Sep 25 2013 | 7:55 pm
      codesign -f -s “3rd Party Mac Developer Application: Carlos David Perales Cejudo” “/Users/carlosdperales/Documents/OBRAS MIAS/ACOUSTBL/APPLICATIONS/DEFINITIVA/Acoustbl.app”
      Since the second file path you provide (to your app itself) does not have any spaces in it, I don't think it needs the quotes around it. Furthermore, what I *always* do when referencing file paths in the Terminal is just drag and drop the file onto the terminal - it automagically formats it the correct way.
    • Sep 26 2013 | 8:05 am
      Thanks Dan, I've already tried this but also unsuccessfully.. What is really weird is that I write this:
      MacBook-Pro-de-Carlos:~ carlosdperales$ codesign -f -s "3rd Party Mac Developer Application: Carlos David Perales Cejudo" "/Users/carlosdperales/Desktop/ACOUSTBL.app/Contents/Frameworks/Cg.framework/Versions/1.0" /Users/carlosdperales/Desktop/ACOUSTBL.app/Contents/Frameworks/Cg.framework/Versions/1.0: replacing existing signature MacBook-Pro-de-Carlos:~ carlosdperales$
      And it seems ok,
      but when I do this:
      MacBook-Pro-de-Carlos:~ carlosdperales$ export CODESIGN_ALLOCATE=”/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate MacBook-Pro-de-Carlos:~ carlosdperales$ codesign -f -s "3rd Party Mac Developer Application: Carlos David Perales Cejudo" /Users/carlosdperales/Desktop/ACOUSTBL.app /Users/carlosdperales/Desktop/ACOUSTBL.app: cannot find code object on disk MacBook-Pro-de-Carlos:~ carlosdperales$
      It seems like something happens with my codesign command at xcode...?? thanks C
    • Sep 26 2013 | 11:04 am
      I'm not sure if this will make a difference based on the error you're getting, but it's worth a try. It seems like your missing a " at the end of your CODESIGN_ALLOCATE statement:
      export CODESIGN_ALLOCATE=”/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate”
    • Sep 26 2013 | 12:26 pm
      thanks Dan, this is what i got:
      MacBook-Pro-de-Carlos:~ carlosdperales$ export CODESIGN_ALLOCATE=”/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate" >
      ...nothing happens...
      and if I add:
      codesign -f -s "3rd Party Mac Developer Application: Carlos David Perales Cejudo" /Users/carlosdperales/Desktop/ACOUSTBL.app
      ...nothing happens...
      somebody knows if its possible to contact directly with any codesign stuff at app developer support?
    • Sep 26 2013 | 1:54 pm
      "Nothing happens" - maybe that means that it worked?! I'm not at a computer right now, so I can't confirm whether there's some other message that you get upon successful signing.
    • Sep 26 2013 | 7:36 pm
      Nop, ... the fact is that I see how _Codesign folders are created inside app, but they seem to be failed, or wrong, or whatever, as I can't upload the app. I've read a lot issues about codesign (associated to iOS programming at xcode, but nothing related to other platforms like MaxMSP) so I can't go through this. I've tried all kind of combinations at terminal, without success. Permissions repaired, No way.. Absolutely sad.
    • Sep 26 2013 | 7:47 pm
      The last thing I could suggest, is updating to Mountain Lion (As is understand you have "Lion"). Not really sure it will change anything, but as i said before, I had issues with outdated stuff. With Snow Leopard, I couldn't codesing Max 6.1.3 standalones... I updated to Mountain Lion (OS X 10.8...) and seemed to be fine after that...
      I am sorry but i cannot think of anything else...
    • Sep 26 2013 | 8:05 pm
      I'm out of ideas too I'm afraid. The only different thing in your build that I can tell is that you have Jitter stuff in their (Cg.framework, etc...), which I did not. But other than that, I see no reason why it shouldn't work.
    • Sep 26 2013 | 8:06 pm
      I'm out of ideas too I'm afraid. The only different thing in your build that I can tell is that you have Jitter stuff in their (Cg.framework, etc...), which I did not. But other than that, I see no reason why it shouldn't work.
      What is the exact error you get now when you try to upload the app?
    • Sep 26 2013 | 10:05 pm
      Thanks Dan, this is what i got
    • Sep 27 2013 | 12:45 pm
      could you post your info.plist? might try "sudo codesign ...."?
    • Sep 27 2013 | 12:58 pm
    • Sep 27 2013 | 1:26 pm
      I'm struggling at this point. Although your Info.plist has a bunch of stuff that mine doesn't, I'm not sure that that's the problem.
      What I would try next is to delete your signing certificate from your Keychain, and then try to re-download it from Apple, then try the codesign again. Maybe something got messed up when you had your duplicates before? Not sure really.
    • Sep 27 2013 | 3:37 pm
      I know that for the Mac App Store, you have to enable sandboxing. Maybe try codesigning with entitlements
      Check this Guide
      From the article:
      "Adding Entitlements for Sandboxing
      If you want to enable App Sandbox for an application, you must add an entitlement property list during the signing process. To do this, add the --entitlements flag and an appropriate property list. For example:
      codesign --entitlements /path/to/entitlements.plist -s "
    • Sep 27 2013 | 4:00 pm
      Oh, yes Nikolas, I overlooked that!! It's an absolute requirement...
    • Sep 27 2013 | 4:10 pm
      yes, i was reading about this, and I included a ACOUSTBL.entitlements inside /Contents, but how do I sign it? as follows?:
      codesign -f -s "3rd Party Mac Developer Application: Carlos David Perales Cejudo" "/Users/carlosdperales/Desktop/ACOUSTBL.app/Contents/ACOUSTBL.entitlements"
      ?
      or you mean at the same time as codesigning app?
      (..by the way: I've been reading that ALL my .mxo files must have the SAME Bundle Identifier as the app one in all .plist files ...)
    • Sep 27 2013 | 4:25 pm
      First, don't put the .entitlements file into the app bundle, it doesn't need to be there.
      Here's the command I use for one of my apps:
      codesign -f -s "3rd Party Mac Developer Application: Daniel Nigrin" /Users/dnigrin/Desktop/General\ MIDI\ Player.app --entitlements /Users/dnigrin/Desktop/General\ MIDI\ Player.entitlements