HISE Logo Forum
    • Categories
    • Register
    • Login

    Native M1 Mac exports

    Scheduled Pinned Locked Moved General Questions
    15 Posts 8 Posters 738 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • GoodflowG
      Goodflow
      last edited by

      I just successfully compiled a universal binary on an Intel Mac running Monterey 12.5.1 +Xcode 13.1, though I still need to run it through Plug Scanner to confirm M1/M2 native compatibility.

      I used posts in this thread as a guide but the basic steps were:

      1. Compile plugin through HISE
      2. Open the AutogeneratedProject file in Projucer
      3. Choose x86_64, ARM64, and ARM64e in the project settings (under Xcode MacOS)
      4. Save + Open in IDE, then compile using Xcode
      1 Reply Last reply Reply Quote 0
      • d.healeyD
        d.healey
        last edited by

        Yes absolutely. I don't think you need to make any changes to the jucer file, it should make a universal binary by default

        Libre Wave - Freedom respecting instruments and effects
        My Patreon - HISE tutorials
        YouTube Channel - Public HISE tutorials

        LindonL 1 Reply Last reply Reply Quote 0
        • LindonL
          Lindon @d.healey
          last edited by Lindon

          @d-healey said in Native M1 Mac exports:

          Yes absolutely. I don't think you need to make any changes to the jucer file, it should make a universal binary by default

          Okay to be entirely clear:

          if you are on an M1 mac just compiling as normal will get you universal binaries (as long as you have the correct XCode and OS)

          if you are on an Intel Mac you need to go thru the process @Goodflow enumerated above (as long as you have the correct XCode version and OS)

          ??

          HISE Development for hire.
          www.channelrobot.com

          d.healeyD 1 Reply Last reply Reply Quote 0
          • d.healeyD
            d.healey @Lindon
            last edited by

            @Lindon I'm not sure you do, unless I customised something in my HISE fork, I'm pretty sure universal binary is automatic. But I'll check now to confirm.

            Libre Wave - Freedom respecting instruments and effects
            My Patreon - HISE tutorials
            YouTube Channel - Public HISE tutorials

            1 Reply Last reply Reply Quote 0
            • d.healeyD
              d.healey
              last edited by

              I just tested a new project in stock HISE (develop branch). Opening the auto generated Xcode project I can see the architecture is set to to standard (Apple Silicon, Intel)

              Screenshot 2022-09-07 at 10.39.47.png

              Libre Wave - Freedom respecting instruments and effects
              My Patreon - HISE tutorials
              YouTube Channel - Public HISE tutorials

              DanHD NatanN 2 Replies Last reply Reply Quote 0
              • DanHD
                DanH @d.healey
                last edited by

                @d-healey yeah afaik you don't need to change anything on intel. My binaries are double in size to pre M1 size so can only assume there's both in there.

                DHPlugins / DC Breaks | Artist / Producer / DJ / Developer
                https://dhplugins.com/ | https://dcbreaks.com/
                London, UK

                1 Reply Last reply Reply Quote 0
                • NatanN
                  Natan @d.healey
                  last edited by

                  @d-healey any M1 Tutorial sir?🤞
                  That will be so helpful for entire forum 👏

                  Christoph HartC 1 Reply Last reply Reply Quote 0
                  • Christoph HartC
                    Christoph Hart @Natan
                    last edited by

                    any M1 Tutorial sir?

                    Why? There's nothing to see here, just export the plugin and it's compatible with both architectures (except for when you export AAX plugins because they are still x64 only).

                    NatanN 1 Reply Last reply Reply Quote 1
                    • GoodflowG
                      Goodflow
                      last edited by

                      Can't edit my previous post but confirmed on my end as well. x86_64 + ARM64 are in the plugin build compiled directly from HISE. No additional steps required.

                      1 Reply Last reply Reply Quote 1
                      • NatanN
                        Natan @Christoph Hart
                        last edited by

                        @Christoph-Hart Well, There is some information about Xcode, and it looks brand new to me 🤦‍♂️

                        d.healeyD 1 Reply Last reply Reply Quote 0
                        • d.healeyD
                          d.healey @Natan
                          last edited by

                          @Natan I only have an Intel Mac ;)

                          Libre Wave - Freedom respecting instruments and effects
                          My Patreon - HISE tutorials
                          YouTube Channel - Public HISE tutorials

                          1 Reply Last reply Reply Quote 1
                          • A
                            ally
                            last edited by

                            Thanks everyone for the clarification! Based on the general consensus I thought I'd successfully exported a universal binary (I had 2 versions of Xcode on my Big Sur computer, 10.3 and 13.2.1) and didn't have a way to check until I recently borrowed a fresh, Rosetta-less M1 laptop and it didn't work. In lieu of holding the laptop hostage, I looked into how to check on any Mac via Terminal:

                            1. Export plugin
                            2. Right click > "Show package contents" > Contents > MacOS > [plugin executable file]
                            3. Type "lipo -archs " into Terminal and drag the executable in.
                            4. Terminal returns "x86_64 arm64" if it's a universal binary and "x86_64" if it's Intel only.

                            Mine were Intel only at first because HISE was using the older version of Xcode to export (I'm guessing because that's what I used to compile HISE itself), so I just had to open the autogenerated Xcode project in the newer Xcode version and export from there. Everything was already set up correctly in the file, so I assume you would not have these issues if your whole setup was not based on an older version of Xcode.

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post

                            22

                            Online

                            1.7k

                            Users

                            11.8k

                            Topics

                            102.6k

                            Posts