Advanced Max: Standalones, Part 2


    Want to build a standalone Mac or Windows application? With Max, you can do just that and I will show you how. The result is an independent application anyone can run on their Mac or Windows machine with no Max installation required. Here’s the second in a series on creating standalone applications. Spend 42 minutes learning the basics on working with dependencies, scripting, and the fine art of trimming your standalone down to size. All the tutorials in this series: Part 1, Part 2, Part 3, Part 4, Part 5

    Advanced Max: Standalones, Part 2


    • Jan 10 2018 | 2:36 pm
      Again, thank you for the video. It seems we are on concurrent paths on this topic, so to speak, and there are a number of active topics on it. So I have shared the automation I have got done so far. before you make another 42-minute tutorial about it, in case you'd rather just press a single key in the future.
    • Jan 10 2018 | 6:38 pm
      the lipo interlude and rabbit hole comment were perfect
      i find this thread to be a good summary of the change standalones went through in Max7: https://cycling74.com/forums/standalone-file-size-in-max-7
    • Jan 10 2018 | 10:10 pm
      Those are both great resources! Thanks for including links to them in this thread!
    • Jan 11 2018 | 4:03 pm
      Apologies that I have been slow, but I needed to do quite a bit of structural design to make the script more usable. I'm currently adding dialog boxes so it doesn't need more hotkeys (currently it needs 2). v2 has a user guide here:
      MaxMake2: Making Portable Collectives with your own Files
    • Jan 12 2018 | 8:24 pm
      Hi Thimothy, hi friends, Thank you for this interesting tutorial. I would like to know if you plan to tell us about [menubar] in standalones, especially this ******* "Quit" item: how to avoid abrupt and dangerous "quit" process, how to route it to a ( useful and much more secure) "save" routine, eventually how to (as in Max 4.x) route its shortcut to [menubar], etc. On Windows machines, do you plan to telle us about missing .dlls? Again, thank you for your work. Best regards, -P www.toys-for-theater.com
    • Jan 12 2018 | 11:33 pm
      A beta of the single-click makefile script is available for download at:
    • Jan 17 2018 | 10:48 pm
      @Philippe We will definitely be getting into menubar and related topics in the coming weeks! @Ernest Truly amazing!
    • Jan 17 2018 | 11:31 pm
      Great
    • Jan 22 2018 | 4:12 am
      I’m still investigating, and I found something which could be a big simplification for including writable files, because it lets you use arguments to specify filenames in buffer~, pattrstorage~, etc. The bit on the right of this patch sets Max searchpath in slot 5 to the absolute path of the {patcher-folder}/support/’ folder in patches and the {executable folder}/support/ folder in standalones.
      Then on closing the patch, it returns the searchpath in slot 5 to the old value, if any, on closebang.
      This result is that the patch thinks everything in the ./support/ folder is in the same folder as the patch. So arguments in objects now appear to work.
    • Jan 29 2018 | 1:21 pm
      Sweet!
      I'll also note that we've solved the problems with the slow standalone build times on the Mac. So that improvement (along with some others for standalone building) will be coming in a future version of Max.
    • Jan 29 2018 | 4:07 pm
      Nice! Looking forward to Max 8's standalone updates. Standalone is definitely one of the stronger features of Max, and it's continual development and refinement is very exciting.
      I'm also wondering if in future tutorials videos we can get official instructions on codesigning an app. not sure if this is outside the scope of this video series, but it might be helpful to have this information available within this c74 official series instead of having to wade through forum threads of people piecing it together post by post.
      cheers!
    • Jan 29 2018 | 4:48 pm
      Yes, there is a plan to do a code-signing video. There is also one slot on the schedule to address any random questions that come in on the various comment threads -- so keep the great questions coming :-)
    • Apr 07 2018 | 7:05 pm
      This is great. Would C74 ever consider creating a message for standalone, or something, that outputs the name of external used by the patch?
    • Apr 08 2018 | 2:46 pm
      I think the standalone feature is a key feature of Max. I am a Max user for several month now and I am really happy with it. Why so late? There are several reasons but one of them is: I always thought that a full Max installation and licence is necessary for running a Max patch and therefore Max patches seemed to have only limited value. Yes: I regret my fault. And yes: I think it is really important, that the Cycling 74 marketing gives this feature a high priority.
    • Apr 12 2018 | 6:40 pm
      So lets say I have a patch with an sfplay~ object and several open messages going into it, like 'open myclip1.wav' and 'open myclip2.wav' etc. In Max if those clips are in the same directory as my patch it reads them fine, but if I drag them into the project window and build an application they don't seem to go with the build. Where would I put those audio files within the package contents for the sfplay~ open message to work?
    • May 14 2018 | 9:38 pm
      @estevan If you use projects then it should list all of the externals used. Also, if you go to the File menu in Max with your patcher open, there is an item at the bottom called "List Externals and Subpatcher Files".
      Enjoy!
    • May 14 2018 | 9:39 pm
      @MBMOSHER Within the Resources/C74 folder there a number of options. "media" and "misc" are probably where I would copy files like that.
      Hope this helps!
    • Dec 09 2018 | 1:57 pm
      Hey there,
      as @PHILIPPE MONTEMONT I´m interested in missing dll files and its settings. if i´m building an app on PC 1 and when I execute it, everything works. when I transfer the app to PC 2, including a folder which has all the files I need in the app, it cant find the external plugin and settings have to be adjusted again with every start of the app. how can I save the settings of the plugin within the built app?