KoKuToru / koku-xinput-wine

Adds xinput support to wine, without changing the source of wine.
BSD 2-Clause "Simplified" License
69 stars 21 forks source link

Multilib Support #2

Closed JesusMcCloud closed 8 years ago

JesusMcCloud commented 10 years ago

Is there a way to get it to work with multilib wine on a 32 bit wineprefix?

KoKuToru commented 10 years ago

I wrote this for/with multilib for 32bit wineprefix. (On a 64Bit Host). It has hardcoded set(CMAKE_CXX_FLAGS "-std=c++0x -m32") for multilib in CMakeLists.txt. There should be no need "to get it to work", it should work. If it doesn't it means the game or program access the XInput API in a manner I don't support. (As example: multiply times asking for Gamepads, I only support first time. Or who knows If it does work on modern wine... I used this 8months ago)

I have no idea if it does work with non multilib or non 32bit wineprefix.

EDIT: start it with export KOKU_XINPUT_DEBUG=1 it might give us some useful information.

mixedCase commented 8 years ago

I'm getting (wrong ELF class: ELFCLASS32) when running on a win32 wineprefix.

Using Arch Linux and compiling with gcc-multilib.

KoKuToru commented 8 years ago

sounds right, on a 64bit system.

LD_PRELOAD will preload the shared library into any following process, it doesn't matter if it's 64bit or 32bit.. If you add a 32bit shared library and a 64bit application gets started, you will get this error message.

So as long as you shared library is 32bit and your wine process is 32bit, everything is fine

mixedCase commented 8 years ago

How can I make sure wine runs in 32 bit mode? I'm running wine-staging from the Arch repos, tried with wine as well but no dice.

KoKuToru commented 8 years ago

There is no need to "make sure", wine can't execute 64bit windows applications. But you still will see the error message from what ever gets loaded before/after/while wine loads your 32bit windows application.

mixedCase commented 8 years ago

Wine is certainly able to run 64 bit windows applications.

In any case, I misunderstood the purpose of this application and was trying to use it to force windows applications into using xinput mode instead of dinput by default. Thank you for your time.