JibbSmart / JoyShockMapper

A tool for PC gamers to play games with DualShock 4, DualSense, JoyCon, and Switch Pro Controllers. Gyro aiming, flick stick.
Other
799 stars 68 forks source link

Latest version is broken on Linux #135

Open linusrg1 opened 3 years ago

linusrg1 commented 3 years ago

Had to downgrade to 1.6.1 to get things to work again.

home/linus/Documents/JoyShockMapper-master/build/_deps/joyshocklibrary-src/JoyShockLibrary/JoyShockLibrary.cpp:76:41: warning: format specifies type 'int' but the argument has type 'hid_device ' (aka 'hiddevice ') [-Wformat] printf("Controller %d timed out\n", jc->handle); ~~ ^~~~~~ /home/linus/Documents/JoyShockMapper-master/build/_deps/joyshocklibrary-src/JoyShockLibrary/JoyShockLibrary.cpp:90:61: warning: format specifies type 'int' but the argument has type 'hid_device ' (aka 'hiddevice ') [-Wformat] printf("Attempting to re-initialise controller %d\n", jc->handle); ~~ ^~~~~~ /home/linus/Documents/JoyShockMapper-master/build/_deps/joyshocklibrary-src/JoyShockLibrary/JoyShockLibrary.cpp:98:61: warning: format specifies type 'int' but the argument has type 'hid_device ' (aka 'hiddevice ') [-Wformat] printf("Attempting to re-initialise controller %d\n", jc->handle); ~~ ^~~~~~ 3 warnings generated. [ 15%] Linking CXX static library libJoyShockLibrary.a [ 15%] Built target JoyShockLibrary Scanning dependencies of target JoyShockMapper [ 23%] Building CXX object JoyShockMapper/CMakeFiles/JoyShockMapper.dir/src/main.cpp.o /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:255:10: error: no matching conversion for functional-style cast from 'const char [100]' to 'std::exception' throw exception("ChordStack should always include ButtonID::NONE, for the chorded variable to return the base value."); ^~~~~~~~~~~~~~~~~~~~~~~ /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/exception.h:66:5: note: candidate constructor not viable: no known conversion from 'const char [100]' to 'const std::exception' for 1st argument exception(const exception&) = default; ^ /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/exception.h:68:5: note: candidate constructor not viable: no known conversion from 'const char [100]' to 'std::exception' for 1st argument exception(exception&&) = default; ^ /usr/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/exception.h:63:5: note: candidate constructor not viable: requires 0 arguments, but 1 was provided exception() _GLIBCXX_NOTHROW { } ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:486:11: warning: 4 enumeration values not handled in switch: 'OnTurbo', 'OnTapRelease', 'OnInstantRelease'... [-Wswitch] switch (evt) ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:575:10: warning: enumeration value 'None' not handled in switch [-Wswitch] switch (actMod) ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:604:35: error: second argument to 'va_arg' is of non-POD type 'OnEventAction' (aka 'function<void (DigitalButton *)>') [-Wnon-pod-varargs] auto action = va_arg(arguments, OnEventAction); ^~~~~ /usr/lib/llvm-10/lib/clang/10.0.0/include/stdarg.h:19:50: note: expanded from macro 'va_arg'

define va_arg(ap, type) __builtin_va_arg(ap, type)

                                             ^~~~

/home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:629:11: warning: 22 enumeration values not handled in switch: 'INVALID', 'NONE', 'LUP'... [-Wswitch] switch (index) { ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:779:12: warning: 57 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] switch (index) { ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:848:12: warning: 36 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] switch (index) ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:972:12: warning: 68 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_THRESHOLD', 'MAX_GYRO_THRESHOLD'... [-Wswitch] switch (index) ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:1777:53: warning: format specifies type 'int' but the argument has type 'unsigned long' [-Wformat] printf("Could not open online help. Error #%d\n", err); ~~ ^~~ %lu /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:1933:10: warning: enumeration values 'FORWARD' and 'INVALID' not handled in switch [-Wswitch] switch (controllerOrientation) ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:2217:12: warning: enumeration value 'INVALID' not handled in switch [-Wswitch] switch (controllerOrientation) ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:2269:10: warning: enumeration value 'INVALID' not handled in switch [-Wswitch] switch (gyro.ignore_mode) { ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:2836:30: error: use of undeclared identifier 'cmdLine' currentWorkingDir = string(&cmdLine[0], &cmdLine[wcslen(cmdLine)]); ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:2836:43: error: use of undeclared identifier 'cmdLine' currentWorkingDir = string(&cmdLine[0], &cmdLine[wcslen(cmdLine)]); ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:2836:58: error: use of undeclared identifier 'cmdLine' currentWorkingDir = string(&cmdLine[0], &cmdLine[wcslen(cmdLine)]); ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:779:12: warning: 57 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] switch (index) { ^ /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:779:12: warning: 57 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:779:12: warning: 57 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:779:12: warning: 57 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:779:12: warning: 57 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:779:12: warning: 57 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] /home/linus/Documents/JoyShockMapper-master/JoyShockMapper/src/main.cpp:779:12: warning: 57 enumeration values not handled in switch: 'INVALID', 'MIN_GYRO_SENS', 'MAX_GYRO_SENS'... [-Wswitch] 17 warnings and 5 errors generated. make[2]: [JoyShockMapper/CMakeFiles/JoyShockMapper.dir/build.make:63: JoyShockMapper/CMakeFiles/JoyShockMapper.dir/src/main.cpp.o] Error 1 make[1]: [CMakeFiles/Makefile2:154: JoyShockMapper/CMakeFiles/JoyShockMapper.dir/all] Error 2 make: *** [Makefile:130: all] Error 2

TauAkiou commented 3 years ago

Please try my fork and let me know if it works for you or not: https://github.com/TauAkiou/JoyShockMapper

linusrg1 commented 3 years ago

Thanks it built and I am able to load it. The taskbar menu is missing though. And I am unsure if it is autoloading my config or not that is located in ~/.config/JoyShockMapper/Autoload.

I get this message as well, and I don't know what it means. There is no onreset.txt file to load. Also when I drag a txt config file into the terminal to load it in I get this error: '/home/linus/.config/JoyShockMapper/AutoLoad/sottr.txt' Unrecognized command: "'/home/linus/.config/JoyShockMapper/AutoLoad/sottr.txt'"

http://gyrowiki.jibbsmart.com/game-config:shadow-of-the-tomb-raider:sottr-full-map This config to be specific

TauAkiou commented 3 years ago

@linusrg1 In my setup, JoyShockMapper will list the Autoload/GyroConfig folders in the shell menu. Does it do this for you? Additionally, if something is autoloading properly, a message will appear in the console. I would recommend running JSM from a terminal to see all of the program output.

JoyShockMapper doesn't like the file name being wrapped in single quotes, which is a problem since drag-and-drop will automatically apply them.