Native Reaper and Windows vsts

Discuss running non-Linux applications and plugins on Linux, for example via wine

Moderators: MattKingUSA, khz

Post Reply
User avatar
sysrqer
Established Member
Posts: 2516
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 147 times
Contact:

Native Reaper and Windows vsts

Post by sysrqer »

I decided to give native reaper another try and I noticed something interesting. I have my vst path to include my wine vst directory so that linvsts are read by hosts but when I start native reaper it appears to be reading the .dlls:

Code: Select all

dssi-vst-server: ERROR: VST entrypoints "VSTPluginMain" or "main" not found in DLL "/home/alex/.wine/drive_c/Program Files/VST Plugins/iZNectar.dll"
Is this a new feature or something on my side doing that? I don't have dssi-vst installed.
User avatar
sysrqer
Established Member
Posts: 2516
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 147 times
Contact:

Re: Native Reaper and Windows vsts

Post by sysrqer »

Ah yes, you're right. I did have an old .REAPER directory, removing that got rid of the dll messages. :oops:
User avatar
lilith
Established Member
Posts: 1698
Joined: Fri May 27, 2016 11:41 pm
Location: bLACK fOREST
Has thanked: 117 times
Been thanked: 57 times
Contact:

Re: Native Reaper and Windows vsts

Post by lilith »

When using Windows VSTs you need to have WINE installed in any case, right?
User avatar
sysrqer
Established Member
Posts: 2516
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 147 times
Contact:

Re: Native Reaper and Windows vsts

Post by sysrqer »

While this thread is here I'll ask another question. 64 bit Reaper won't start if I set it to scan for my invst folder, is there any way around this?

Code: Select all

err:process:create_process 64-bit application L"Z:\\usr\\bin\\lin-vst-server.exe.so" not supported in 32-bit prefix
wine: Bad EXE format for Z:\usr\bin\lin-vst-server.exe.so.
I tried using the 32 bit version of linvst but that just causes the converter to not open.

./linvstconverttree: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory

What's going on here? I don't have any problem with renoise or ardour loading the linvsts.
ubuntuuser
Established Member
Posts: 315
Joined: Mon Jan 02, 2017 9:46 am
Has thanked: 1 time
Been thanked: 5 times

Re: Native Reaper and Windows vsts

Post by ubuntuuser »

sysrqer wrote:While this thread is here I'll ask another question. 64 bit Reaper won't start if I set it to scan for my invst folder, is there any way around this?

Code: Select all

err:process:create_process 64-bit application L"Z:\\usr\\bin\\lin-vst-server.exe.so" not supported in 32-bit prefix
wine: Bad EXE format for Z:\usr\bin\lin-vst-server.exe.so.
I tried using the 32 bit version of linvst but that just causes the converter to not open.

./linvstconverttree: error while loading shared libraries: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory

What's going on here? I don't have any problem with renoise or ardour loading the linvsts.
Maybe some sort of 64/32 bit mixup.

It seems like a 64 bit wine program (lin-vst-server) is being run with a 32 bit wine prefix

Then you seemed to change to 32 bits so the 32 bit linvstconverttree would need the 32 bit libgtk-x11-2.0.so.0

sudo apt install libgtk2.0-0:i386

btw there is also a gtk3 version of linvstconvert/tree

Usually on a 64 bit system, I would use a 64 bit wine prefix.
User avatar
sysrqer
Established Member
Posts: 2516
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 147 times
Contact:

Re: Native Reaper and Windows vsts

Post by sysrqer »

ubuntuuser wrote:
Maybe some sort of 64/32 bit mixup.

It seems like a 64 bit wine program (lin-vst-server) is being run with a 32 bit wine prefix

Then you seemed to change to 32 bits so the 32 bit linvstconverttree would need the 32 bit libgtk-x11-2.0.so.0

sudo apt install libgtk2.0-0:i386

btw there is also a gtk3 version of linvstconvert/tree

Usually on a 64 bit system, I would use a 64 bit wine prefix.
Unfortunately, this seems to be problematic:

Code: Select all

sudo apt install libgtk2.0-0:i386
[sudo] password for alex: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Starting pkgProblemResolver with broken count: 1
Starting 2 pkgProblemResolver with broken count: 1
Investigating (0) libpangoft2-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs )
Broken libpangoft2-1.0-0:i386 Depends on libharfbuzz0b [ i386 ] < none -> 1.0.1-1ubuntu0.1 > ( libs ) (>= 0.9.30)
  Considering libharfbuzz0b:i386 0 as a solution to libpangoft2-1.0-0:i386 1
  Holding Back libpangoft2-1.0-0:i386 rather than change libharfbuzz0b:i386
Investigating (0) libpangocairo-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs )
Broken libpangocairo-1.0-0:i386 Depends on libpangoft2-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs ) (>= 1.28.1)
  Considering libpangoft2-1.0-0:i386 1 as a solution to libpangocairo-1.0-0:i386 0
  Holding Back libpangocairo-1.0-0:i386 rather than change libpangoft2-1.0-0:i386
Investigating (1) libgtk2.0-0 [ i386 ] < none -> 2.24.30-1ubuntu1.16.04.2 > ( libs )
Broken libgtk2.0-0:i386 Depends on libpangocairo-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs ) (>= 1.28.3)
  Considering libpangocairo-1.0-0:i386 0 as a solution to libgtk2.0-0:i386 9999
    Reinst Failed because of libharfbuzz0b:i386
    Reinst Failed because of libpangoft2-1.0-0:i386
Broken libgtk2.0-0:i386 Depends on libpangoft2-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs ) (>= 1.28.3)
  Considering libpangoft2-1.0-0:i386 1 as a solution to libgtk2.0-0:i386 9999
Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies.
 libgtk2.0-0:i386 : Depends: libpangocairo-1.0-0:i386 (>= 1.28.3) but it is not going to be installed
                    Depends: libpangoft2-1.0-0:i386 (>= 1.28.3) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Is there a way to convert a prefix to 64 bit?
I don't understand why this whole situation is a problem for reaper, I can use linvst with 32 bit prefix inside 64 bit renoise and ardour. Strangely, airwave plugins work in reaper, just not linvst.
ubuntuuser
Established Member
Posts: 315
Joined: Mon Jan 02, 2017 9:46 am
Has thanked: 1 time
Been thanked: 5 times

Re: Native Reaper and Windows vsts

Post by ubuntuuser »

sysrqer wrote:
ubuntuuser wrote:
Maybe some sort of 64/32 bit mixup.

It seems like a 64 bit wine program (lin-vst-server) is being run with a 32 bit wine prefix

Then you seemed to change to 32 bits so the 32 bit linvstconverttree would need the 32 bit libgtk-x11-2.0.so.0

sudo apt install libgtk2.0-0:i386

btw there is also a gtk3 version of linvstconvert/tree

Usually on a 64 bit system, I would use a 64 bit wine prefix.
Unfortunately, this seems to be problematic:

Code: Select all

sudo apt install libgtk2.0-0:i386
[sudo] password for alex: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Starting pkgProblemResolver with broken count: 1
Starting 2 pkgProblemResolver with broken count: 1
Investigating (0) libpangoft2-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs )
Broken libpangoft2-1.0-0:i386 Depends on libharfbuzz0b [ i386 ] < none -> 1.0.1-1ubuntu0.1 > ( libs ) (>= 0.9.30)
  Considering libharfbuzz0b:i386 0 as a solution to libpangoft2-1.0-0:i386 1
  Holding Back libpangoft2-1.0-0:i386 rather than change libharfbuzz0b:i386
Investigating (0) libpangocairo-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs )
Broken libpangocairo-1.0-0:i386 Depends on libpangoft2-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs ) (>= 1.28.1)
  Considering libpangoft2-1.0-0:i386 1 as a solution to libpangocairo-1.0-0:i386 0
  Holding Back libpangocairo-1.0-0:i386 rather than change libpangoft2-1.0-0:i386
Investigating (1) libgtk2.0-0 [ i386 ] < none -> 2.24.30-1ubuntu1.16.04.2 > ( libs )
Broken libgtk2.0-0:i386 Depends on libpangocairo-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs ) (>= 1.28.3)
  Considering libpangocairo-1.0-0:i386 0 as a solution to libgtk2.0-0:i386 9999
    Reinst Failed because of libharfbuzz0b:i386
    Reinst Failed because of libpangoft2-1.0-0:i386
Broken libgtk2.0-0:i386 Depends on libpangoft2-1.0-0 [ i386 ] < none -> 1.38.1-1 > ( libs ) (>= 1.28.3)
  Considering libpangoft2-1.0-0:i386 1 as a solution to libgtk2.0-0:i386 9999
Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies.
 libgtk2.0-0:i386 : Depends: libpangocairo-1.0-0:i386 (>= 1.28.3) but it is not going to be installed
                    Depends: libpangoft2-1.0-0:i386 (>= 1.28.3) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Is there a way to convert a prefix to 64 bit?
I don't understand why this whole situation is a problem for reaper, I can use linvst with 32 bit prefix inside 64 bit renoise and ardour. Strangely, airwave plugins work in reaper, just not linvst.
On a 64 bit system usually the wine prefix would be 64 bit and then the 64 bit LinVst can run 64 bit and 32 bit vst's using the 64 bit wine prefix, but for the 64 bit LinVst to run 32 bit vst's multilib needs to be installed.

The 64 bit LinVst (that can handle 32 bit vst's) needs to be made using the 6432 makefile (the LinVst binary releases are made from the 6432 makefile).

With a 32 bit wine prefix on a 64 bit system, I'm not so sure about because I've never done that before, I suppose it would work with 32 bit wine apps but there might be some incompatibilities, I'm not sure.

The 32 bit only LinVst version is really for 32 bit systems like the old core duo systems etc that are 32 bit processors.

I'm not sure about what Airwave does as far as wine prefixes go, maybe install a hard coded link to the wine prefix using the utility it comes with, I'm not sure.

A 64 bit wine prefix is created by default on a 64 bit system when starting winecfg and it's called .wine or /home/user/.wine.

Someone can have different (or more than one) wine prefixes and have vst's within them and then when those vst's are loaded (using LinVst) then that wineprefix will be used (and all of it's dll overrides and settings etc).

Just say Delay.dll is installed in a 64 bit wine prefix called .wine2 in the VSTPlugins directory, so the path to the vst would be /home/user/.wine2/VSTPlugins/Delay.dll and then using linvstconvert it adds a Delay.so file in that directory ( /home/user/.wine2/VSTPlugins).

The daw's vst search path then needs /home/user/.wine2/VSTPlugins added to it and then when Delay.so is loaded in the daw the Delay.dll vst will be using the .wine2 prefix (and all of it's dll overrides and settings which can be different to another wineprefix say .wine or .wine3 or whatever).

Each wineprefix can have it's own windows environment (dll overrides etc).

Someone could use and setup a wineprefix for a game and also use another wineprefix for Office and also use another wineprefix for vst's or whatever (wine game players are pretty good at setting up wineprefixes).

With LinVst, a symbolic link outside of the wineprefix say in /home/user/vst can point to /home/user/.wine2/VSTPlugins or to /home/user/.wine2/VSTPlugins/Delay.so and the the daw can load the vst from /home/user/vst

So to make a long story short usually the default 64 bit .wine prefix gets used on a 64 bit system and LinVst would be the 6432 version that also needs multilib installed for 32 bit vst's.
User avatar
sysrqer
Established Member
Posts: 2516
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 147 times
Contact:

Re: Native Reaper and Windows vsts

Post by sysrqer »

Thanks for the detailed information. I always thought the conventional wisdom was that 32 bit prefixes are safer/better for audio. I suppose for now I just won't use reaper, it's too much hassle starting over again and reinstalling everything in to a new prefix, especially as the 32 bit prefix works fine with the other daws I currently use (so I assume I have the multilibs necessary already and the correct binaries from LinVst-2.1.5-Ubuntu-14.04.zip).
ubuntuuser
Established Member
Posts: 315
Joined: Mon Jan 02, 2017 9:46 am
Has thanked: 1 time
Been thanked: 5 times

Re: Native Reaper and Windows vsts

Post by ubuntuuser »

sysrqer wrote:Thanks for the detailed information. I always thought the conventional wisdom was that 32 bit prefixes are safer/better for audio. I suppose for now I just won't use reaper, it's too much hassle starting over again and reinstalling everything in to a new prefix, especially as the 32 bit prefix works fine with the other daws I currently use (so I assume I have the multilibs necessary already and the correct binaries from LinVst-2.1.5-Ubuntu-14.04.zip).
This is how the LinVst binaries would usually be used.

LinVst-2.1.5-Ubuntu-14.04.zip is 64 bit and it can handle 64 and 32 bit vst's (multilib) and is meant for a 64 bit wineprefix on 64 bit systems.

LinVst-2.1.5-Debian-Stretch.zip is 64 bit and it can handle 64 and 32 bit vst's (multilib) and is meant for a 64 bit wineprefix on 64 bit systems.

LinVst-2.1.5-Ubuntu-14.04-32bitonly.zip is just 32 bit for 32 bit vst's only and is meant for a 32 bit wineprefix on 32 bit systems.
User avatar
sysrqer
Established Member
Posts: 2516
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 147 times
Contact:

Re: Native Reaper and Windows vsts

Post by sysrqer »

I understand that but I've never had any problem with linvst before I tried to use it with reaper.

I can try a new 64 bit prefix for testing purposes but it seems very odd to me that Renoise and Ardour have no issue with my current set up.
User avatar
sysrqer
Established Member
Posts: 2516
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 147 times
Contact:

Re: Native Reaper and Windows vsts

Post by sysrqer »

I've tried this again, creating a new 64 bit prefix and all was going well, vsts were loading in reaper but I tried to install Ozone 8 and now when I start reaper I get

Code: Select all

wine: cannot find '/usr/bin/lin-vst-server32.exe.so'
The file is definitely there in /usr/bin and appear to have correct permissions:

Code: Select all

-rwxr-xr-x  1 root root      708 May 19 14:46 lin-vst-server32.exe*
-rwxr-xr-x  1 root root     154K May 19 14:46 lin-vst-server32.exe.so*
-rwxr-xr-x  1 root root      706 May 19 14:46 lin-vst-server.exe*
-rwxr-xr-x  1 root root     161K May 19 14:46 lin-vst-server.exe.so*
All wine files in that directory look ok as far as I can see:

Code: Select all

lrwxrwxrwx  1 root root       26 May 12 12:00 wine -> /opt/wine-staging/bin/wine*
lrwxrwxrwx  1 root root       28 May 12 12:00 wine64 -> /opt/wine-staging/bin/wine64*
lrwxrwxrwx  1 root root       38 May 12 12:00 wine64-preloader -> /opt/wine-staging/bin/wine64-preloader*
lrwxrwxrwx  1 root root       30 May 12 12:00 wineboot -> /opt/wine-staging/bin/wineboot*
lrwxrwxrwx  1 root root       31 May 12 12:00 winebuild -> /opt/wine-staging/bin/winebuild*
lrwxrwxrwx  1 root root       29 May 12 12:00 winecfg -> /opt/wine-staging/bin/winecfg*
lrwxrwxrwx  1 root root       33 May 12 12:00 wineconsole -> /opt/wine-staging/bin/wineconsole*
lrwxrwxrwx  1 root root       29 May 12 12:00 winecpp -> /opt/wine-staging/bin/winecpp*
lrwxrwxrwx  1 root root       29 May 12 12:00 winedbg -> /opt/wine-staging/bin/winedbg*
lrwxrwxrwx  1 root root       30 May 12 12:00 winedump -> /opt/wine-staging/bin/winedump*
lrwxrwxrwx  1 root root       30 May 12 12:00 winefile -> /opt/wine-staging/bin/winefile*
lrwxrwxrwx  1 root root       29 May 12 12:00 wineg++ -> /opt/wine-staging/bin/wineg++*
lrwxrwxrwx  1 root root       29 May 12 12:00 winegcc -> /opt/wine-staging/bin/winegcc*
lrwxrwxrwx  1 root root       31 May 12 12:00 winemaker -> /opt/wine-staging/bin/winemaker*
lrwxrwxrwx  1 root root       30 May 12 12:00 winemine -> /opt/wine-staging/bin/winemine*
lrwxrwxrwx  1 root root       30 May 12 12:00 winepath -> /opt/wine-staging/bin/winepath*
lrwxrwxrwx  1 root root       36 May 12 12:00 wine-preloader -> /opt/wine-staging/bin/wine-preloader*
lrwxrwxrwx  1 root root       32 May 12 12:00 wineserver -> /opt/wine-staging/bin/wineserver*
-rwxr-xr-x  1 root root     628K Jun 24  2015 winetricks*

I've removed Ozone but I still get the same message.

Do you have any idea what the problem might be?
ubuntuuser
Established Member
Posts: 315
Joined: Mon Jan 02, 2017 9:46 am
Has thanked: 1 time
Been thanked: 5 times

Re: Native Reaper and Windows vsts

Post by ubuntuuser »

sysrqer wrote:I've tried this again, creating a new 64 bit prefix and all was going well, vsts were loading in reaper but I tried to install Ozone 8 and now when I start reaper I get

Code: Select all

wine: cannot find '/usr/bin/lin-vst-server32.exe.so'
The file is definitely there in /usr/bin and appear to have correct permissions:

Code: Select all

-rwxr-xr-x  1 root root      708 May 19 14:46 lin-vst-server32.exe*
-rwxr-xr-x  1 root root     154K May 19 14:46 lin-vst-server32.exe.so*
-rwxr-xr-x  1 root root      706 May 19 14:46 lin-vst-server.exe*
-rwxr-xr-x  1 root root     161K May 19 14:46 lin-vst-server.exe.so*
All wine files in that directory look ok as far as I can see:

Code: Select all

lrwxrwxrwx  1 root root       26 May 12 12:00 wine -> /opt/wine-staging/bin/wine*
lrwxrwxrwx  1 root root       28 May 12 12:00 wine64 -> /opt/wine-staging/bin/wine64*
lrwxrwxrwx  1 root root       38 May 12 12:00 wine64-preloader -> /opt/wine-staging/bin/wine64-preloader*
lrwxrwxrwx  1 root root       30 May 12 12:00 wineboot -> /opt/wine-staging/bin/wineboot*
lrwxrwxrwx  1 root root       31 May 12 12:00 winebuild -> /opt/wine-staging/bin/winebuild*
lrwxrwxrwx  1 root root       29 May 12 12:00 winecfg -> /opt/wine-staging/bin/winecfg*
lrwxrwxrwx  1 root root       33 May 12 12:00 wineconsole -> /opt/wine-staging/bin/wineconsole*
lrwxrwxrwx  1 root root       29 May 12 12:00 winecpp -> /opt/wine-staging/bin/winecpp*
lrwxrwxrwx  1 root root       29 May 12 12:00 winedbg -> /opt/wine-staging/bin/winedbg*
lrwxrwxrwx  1 root root       30 May 12 12:00 winedump -> /opt/wine-staging/bin/winedump*
lrwxrwxrwx  1 root root       30 May 12 12:00 winefile -> /opt/wine-staging/bin/winefile*
lrwxrwxrwx  1 root root       29 May 12 12:00 wineg++ -> /opt/wine-staging/bin/wineg++*
lrwxrwxrwx  1 root root       29 May 12 12:00 winegcc -> /opt/wine-staging/bin/winegcc*
lrwxrwxrwx  1 root root       31 May 12 12:00 winemaker -> /opt/wine-staging/bin/winemaker*
lrwxrwxrwx  1 root root       30 May 12 12:00 winemine -> /opt/wine-staging/bin/winemine*
lrwxrwxrwx  1 root root       30 May 12 12:00 winepath -> /opt/wine-staging/bin/winepath*
lrwxrwxrwx  1 root root       36 May 12 12:00 wine-preloader -> /opt/wine-staging/bin/wine-preloader*
lrwxrwxrwx  1 root root       32 May 12 12:00 wineserver -> /opt/wine-staging/bin/wineserver*
-rwxr-xr-x  1 root root     628K Jun 24  2015 winetricks*

I've removed Ozone but I still get the same message.

Do you have any idea what the problem might be?
I don't really know what happened, it's an odd error.

I'll try Ozone if I can and see what happens.
ubuntuuser
Established Member
Posts: 315
Joined: Mon Jan 02, 2017 9:46 am
Has thanked: 1 time
Been thanked: 5 times

Re: Native Reaper and Windows vsts

Post by ubuntuuser »

I tried the 32 bit and 64 bit Ozone 8 vst's and they seem to be ok.

Maybe you have a wine corruption problem or whatever.

I'd be tempted to start over again and delete the wineprefixes and reinstall wine and see what happens.
User avatar
sysrqer
Established Member
Posts: 2516
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 147 times
Contact:

Re: Native Reaper and Windows vsts

Post by sysrqer »

I think I figured out the problem, I noticed renoise was getting stuck as well when rescanning after reinstalling ozone. If I removed the .so files for the files without spaces in the names, such as iZOzone8Dynamics.so, renoise scanned the ones without spaces in and they worked. Reaper also didn't have any trouble once this was done. It seems these .dll files are needed by Ozone but they are not the ones that you load inside the program so removing the .so files fixed the issue.

Not sure why that's the case, could well be some kind of corruption issue but I can live with it, everything's working well now. Thanks for the help and for linvst 8)
Post Reply