Cross-compiling and running addon.

  • I am attempting to run a program that was cross-compiled to enable support for wii u/gc controller hubs. See GitHub - ToadKing/wii-u-gc-adapter: Tool for using the Wii U GameCube Adapter on Linux.

    I believe I have compiled it correctly, creating an addon structure and running

    PROJECT=Generic ARCH=x86_64 scripts/build wii-u-gc-adapter

    It seems to be possible to just copy the binary over to LibreELEC and run it manually, it runs, but doesn't seem to run properly. Correct me if I'm wrong, but I think the missing part is the uinput kernel module.

    modprobe uinput doesnt seem to do anything - I'm assuming because LibreELEC wasnt built with the module (lsmod doesn't list it and modinfo uinput confirms this). I tried to add this dependency through the DEPENDS_TARGET with libevdev, but I don't think thats correct.

    My question here is two fold - Is there a way to add this module uinput to an existing Libreelec installation (seems to be a subset of libevdev)? Do I need to add this addon to an image and then reinstall the OS?

    Sorry if this is way off base, this is all new to me. Here's what I have going off of some of the other addon packages - I doubt it's 100% correct.

    Python
    #!/usr/bin/python
    import subprocess
    
    subprocess.call("systemd-run /usr/bin/wii-u-gc-adapter", shell=True)
  • You need uinput module when running your binary and not when compiling it (remove pre_make_target() function). And this module is enabled in kernel for LE.