HISE Logo Forum
    • Categories
    • Register
    • Login

    OS for compiling in Linux?

    Scheduled Pinned Locked Moved General Questions
    21 Posts 5 Posters 420 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.
    • d.healeyD
      d.healey @bendurso
      last edited by

      @bendurso yes, I'm on v18 I think, I'll check when I'm home

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

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

        @bendurso oh wait do you mean as a user or for compiling?

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

        bendursoB 1 Reply Last reply Reply Quote 0
        • bendursoB
          bendurso @d.healey
          last edited by

          @d-healey For compiling :)

          1 Reply Last reply Reply Quote 0
          • bendursoB
            bendurso @d.healey
            last edited by

            @d-healey Oh, and is that rule only for Linux? I understood that in Windows and macOS, the OS version you use to export the plugin doesn't matter

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

              @bendurso Yeah just for Linux. Main reason is because of the way Linux shares libraries so you need to use a version of the library that is the same or older than the version a user will have. So using a newer OS will use a newer version of a library which users on older OS versions won't have available.

              For standard programs there are solutions to this like flatpak. snap, appimage, but I don't think such a solution exists for plugins.

              I just checked and I'm using Linux Mint 18.

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

              bendursoB 1 Reply Last reply Reply Quote 2
              • bendursoB
                bendurso @d.healey
                last edited by

                @d-healey This is a bit old, but.. I’m now trying to use Linux on a Silicon Mac. I understand that Mint doesn’t work with ARM processors. If I use Ubuntu 20.04 Focal (ARM version), will the plugins I export work on non‑ARM computers? If not.. is there another alternative?

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

                  @bendurso The only distro I know that somewhat runs on Apple silicon is Asahi Linux, but I believe there are still some driver issues and I'm not sure which generation of M chip it supports.

                  I believe if you manage to install it, and then manage to build HISE on it, you'll end up with an ARM build that probably won't run on many (or any) other distros.

                  All of this is a guess because I haven't tried it.

                  I think you'll have better luck using an Intel/amd system, either dedicated to Linux or using a virtual machine. I do all my builds with virtual machines on a Proxmox server.

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

                  bendursoB 1 Reply Last reply Reply Quote 1
                  • bendursoB
                    bendurso @d.healey
                    last edited by

                    @d-healey said in OS for compiling in Linux?:

                    Great, thanks! I also just found something called QEMU, which allows you to emulate (rather than virtualize) any operating system on Silicon Macs. That means I could run Mint on my Mac M4. I’m going to give it a try. 🙂

                    d.healeyD modularsamplesM 2 Replies Last reply Reply Quote 1
                    • d.healeyD
                      d.healey @bendurso
                      last edited by

                      @bendurso Yeah Proxmox uses qemu too

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

                      bendursoB 1 Reply Last reply Reply Quote 0
                      • bendursoB
                        bendurso @d.healey
                        last edited by

                        @d-healey Oh nice, but if I do it on my computer is free hehe
                        The proxmox server is a paid subscription right? Or there is a free version?

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

                          @bendurso Proxmox is free and open source, there is a paid repo with some enterprise stuff but we don't need it. I followed this course - https://www.youtube.com/playlist?list=PLT98CRl2KxKHnlbYhtABg6cF50bYa8Ulo

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

                          1 Reply Last reply Reply Quote 1
                          • modularsamplesM
                            modularsamples @bendurso
                            last edited by

                            @bendurso You can virtualise ARM Linux with UTM, but then use Rosetta to provide the x86 emulation:

                            Rosetta

                            Documentation for UTM virtual machines

                            favicon

                            UTM Documentation (docs.getutm.app)

                            I've not tried it yet, so don't know how practical it is in use, but it should perform significantly better than emulating the entire OS.

                            bendursoB 1 Reply Last reply Reply Quote 2
                            • bendursoB
                              bendurso @modularsamples
                              last edited by bendurso

                              @d-healey thanks I will check it :)
                              @modularsamples Thanks, sounds good. I ended up using UTM in emulation mode, but yeah… it’s really slow. I actually have an old Mac running Mint that feels faster than this emulation.

                              This virtualization with Rosetta sounds promising. But it’s really important that all the libraries and dependencies are installed for x86_64, right? Because if we build HISE using some ARM libraries, then the resulting plugin wouldn’t work correctly on x86_64 machines I think.

                              modularsamplesM 1 Reply Last reply Reply Quote 0
                              • modularsamplesM
                                modularsamples @bendurso
                                last edited by

                                @bendurso said in OS for compiling in Linux?:

                                But it’s really important that all the libraries and dependencies are installed for x86_64, right? Because if we build HISE using some ARM libraries, then the resulting plugin wouldn’t work correctly on x86_64 machines I think.

                                If you want to distribute on x86, probably. I had a little play around with this earlier, and was able to get HISE up running on an ARM version of Debian 12 natively, but ran into problems adding the amd64 versions of the dependancies Clang, llvm and build-essentials (the rest install okay):

                                 clang-14:amd64 : Depends: libclang-common-14-dev:amd64 (= 1:14.0.6-12) but it is not installable
                                                  Recommends: llvm-14-dev:amd64 but it is not going to be installed
                                                  Recommends: python3:amd64 but it is not going to be installed
                                 dpkg-dev : Depends: make
                                            Depends: binutils but it is not installable
                                            Recommends: build-essential but it is not installable
                                 python3 : PreDepends: python3-minimal (= 3.11.2-1+b1) but it is not going to be installed
                                           Depends: python3.11 (>= 3.11.2-1~) but it is not going to be installed
                                
                                

                                We should be able to specify an architecture when building:

                                TARGET_ARCH='-march=x86-64' make config=RELEASE
                                

                                But this just gives us an error and list of acceptable values (all ARM), so it seems likely either the missing dependancies need fixing, or there's some other step being missed..

                                bendursoB 1 Reply Last reply Reply Quote 1
                                • bendursoB
                                  bendurso @modularsamples
                                  last edited by

                                  @modularsamples Nice, thanks for the details.

                                  I think I’m going to get a decent Intel computer to compile for Windows and Linux x86—it’ll be easier, hehe.

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

                                  31

                                  Online

                                  1.9k

                                  Users

                                  12.2k

                                  Topics

                                  106.5k

                                  Posts