Making Steinberg Nuendo work on Linux

by Rudd-O published 2007/08/24 16:45:32 GMT+0, last modified 2013-06-26T03:24:19+00:00

My passion for music doesn't stop at enjoyment. I love to remix, and Nuendo's the best for that. Unfortunately, my Windows setup can't cope with my hardware.

So what do I do?

I run Nuendo on Linux. Here's a quick primer -- you should be familiar, very familiar with Linux in order to do this.

But Nuendo didn't work originally. That's because Nuendo requires something called ASIO, related to low-latency audio output -- why this is required on Linux as well escapes my comprehension, since Linux already has very low-latency output.

Here's what I did.

Install wine and wine-dev

I'm using KUbuntu Feisty, so your mileage may vary, but you need both packages (yes, the development package as well) because you will be compiling something after a few minutes. In case you're using RPM-based distros like CentOS or Fedora, the development package is wine-devel.

Link Nuendo to your ~/.wine/drive_c folder

I never "installed" Nuendo using the installation software. I just linked my Windows partition to /home/rudd-o/.wine/drive_c. In my machine, that's where Wine expects to find the C: drive.

Your mileage may vary. You may want to copy the contents of your C: drive there, or use winecfg to point Wine to the right directory.

Download wineasio

wineasio is a library that allows Wine's JACK output plugin to serve ASIO programs. Nuendo is one of those.

Here's the download.

Install JACK and its development files

In my machine, the two packages I needed to install were jackd and libjack0.100.0-dev. Again, your mileage may vary.

Get asio.h

asio.h... I got that file using a samizdat method, because otherwise I would have had to sign an agreement with Steinberg. Turns out asio.h is quite widespread in the World Wide Blag. Just jump here and copy the text. If this link ever dies, just look for file:asio.h in Google Code Search.

Uncompress the wineasio tarball

And then place the asio.h file in the uncompressed folder.

Compile and deploy

  • Open a terminal and change to the wineasio uncompressed folder.
  • Run make. At this point, if you failed to install the required development packages, you will see a slew of compiler error messages. Go back and reread the earlier sections.
  • Then, as root, run make install.
  • Then, back as your regular user, run regsvr32 wineasio.dll.

Configure Wine to use the JACK driver

Run winecfg on the terminal. On the Audio tab, select the JACK output plugin.

Now I had to do a fix, because my Wine installation wasn't finding a file named libjack.so.0. I did this:

ln -s /usr/lib/libjack-0.100.0.so.0.0.23 /usr/lib/libjack.so.0

So go find a library named libjack-0.something.so.something, and link it so it's named /usr/lib/libjack.so.0. Why my distribution failed to do this for me, escapes my understanding.

Start the JACK driver

This is easy. I used the command jackd -d alsa -r 44100.

Start Nuendo

Use your terminal to change to your Nuendo folder, and then run wine nuendo.exe.

Pay attention to any of the error messages. If Nuendo starts up and doesn't say that the audio engine couldn't be enabled, then you're set to start recording and playing back.

Good luck with your Nuendo and Linux. Now, if you'll excuse me, I'm heading for my latest 6-hour set/megamix.

Update: I have a showcase of two alternate methods that use VMware and Windows directly if you can't make this work. I know it's hard to make this method work, and with my machine recently updated to Kubuntu Gutsy Gibbon, this method stopped working.