psycha0s / airwave

Airwave is a WINE-based VST bridge, that allows for the use of Windows 32- and 64-bit VST 2.4 audio plugins with Linux VST hosts
MIT License
573 stars 35 forks source link

"Host binary '' doesn't exists", plugins not showing in DAWs #96

Closed nodiscc closed 2 years ago

nodiscc commented 6 years ago

Hello, I could install and run airwave without problems, however after linking a few VSTs, I can't get them to show up in my VST hosts.

What I did:

1529774573.406888999         stepchild.so : Initializing plugin endpoint 1.3.4
1529774573.406898226         stepchild.so : Plugin binary: /home/me/airwave/stepchild.so
1529774573.406908866         stepchild.so : WINE prefix:   /home/me/.wine
1529774573.406946306         stepchild.so : WINE loader:   /usr/lib/wine/wine64
1529774573.406954441         stepchild.so : VST binary:    /home/me/.wine/DAW-TOOLS-DLL/subminimal-stepchild-v1.03a-beta-r6/stepchild.dll
1529774573.442235746         stepchild.so : Host binary '' doesn't exists

Debian 9 stretch, amd64

How can I fix this? Any help is welcome.

rodlie commented 6 years ago

Are these 32-bit plugins? If that is the case you will need to rebuild airwave with 32-bit support (update my repo, it was disabled earlier). Note that you will need a multilib installation of wine to make airwave build 32-bit+64-bit support.

organgtool commented 4 years ago

I have this same issue when attempting to load some plugins that I believe are 32-bit. I'm running Airwave 1.3.3 which I must have compiled without 32-bit support on May 16 (I used rodlie's airwave64.sh script to perform the build). I'm using Ubuntu 20.04 and Wine 5.0 which is from Ubuntu's repos and not Wine's repos (I had problems with Wine's repos in previous versions of Ubuntu). When I try to build a 32-bit version using the instructions in this repo, I get a compilation error:

/usr/bin/ld: relocatable linking with relocations from format elf64-x86-64 (/usr/lib/x86_64-linux-gnu/wine/libwinecrt0.a(exe_entry.o)) to format elf32-i386 (airwave-host-32.uvT6Sm.o) is not supported

I saw there was a similar issue in LMMS and a commit with a workaround for this:

EXEC_PROGRAM( wineg++ ARGS "-v -m32 /dev/zero" OUTPUT_VARIABLE WINEBUILD_OUTPUT) if("${WINEBUILD_OUTPUT}" MATCHES ".*x86_64-linux-gnu/wine/libwinecrt0.a.*") SET(EXTRA_FLAGS ${EXTRA_FLAGS} -nodefaultlibs /usr/lib/i386-linux-gnu/wine/libwinecrt0.a -luser32 -lkernel32 -lgdi32) ENDIF()

After adding that to src/host/CMakeLists.txt, it resolved the error (although I'm not sure it was a good solution) but now I'm getting the error:

/usr/bin/ld: relocatable linking with relocations from format elf64-x86-64 (CMakeFiles/airwave-host-32.dir/__/common/dataport.cpp.o) to format elf32-i386 (airwave-host-32.P1RuHj.o) is not supported

When I get this many compilation errors, I start to wonder if I'm on the right path or if there's something in the bigger picture that I'm missing. Any help is greatly appreciated.

By the way, the 64-bit version of Steven Slate Drums 4 (plugin version 1.1) works without any issues (including multi-channel outputs), so you can add that to your compatibility list.

nodiscc commented 2 years ago

As I don't use Airwave anymore, and this project now looks abandoned (no commits since 2020, no activity from @psycha0s), I'm closing this issue.