February 22, 20233 yr Hi, Im pretty new to linux in general mostly used windows before. Is there a way to get waydroid work on armbian? I installed it but waydroid sais that the binder kernels are missing (1). When I follow the instruction to install the kernel modules using dkms I also get a failure (2). (1) ERROR: Binder node "binder" for waydroid not found (2) Error! Bad return status for module build on kernel: linux-headers-5.10.110-rockchip-rk3588 Anyone can help me with this? Thanks in advance!
February 22, 20233 yr I guess you need these kernel modules: CONFIG_ANDROID_LOW_MEMORY_KILLER=n CONFIG_ANDROID_BINDER_IPC=y CONFIG_ANDROID_BINDERFS=y CONFIG_ANDROID_BINDER_DEVICES="binder,hwbinder,vndbinder,anbox-binder,anbox-hwbinder,anbox-vndbinder" These are in the config on github, probably you'll need to update the kernel
February 22, 20233 yr Author Is there a guide anywhere how to update the kernel? I have found a guide on how to build a new kernel, but how do I update the existing one afterwards? Thanks! If it matters I read some logs and got the following error when installing the kernel module: Your kernel does not support KProbes
February 22, 20233 yr sudo apt install linux-image-legacy-rockchip-rk3588 If you build one yourself the debs will be in ./output/debs/ To install sudo apt install ./*image*.deb or sudo dpkg -i *image*.deb Edited February 22, 20233 yr by royk
February 22, 20233 yr Author Apt sais I already have the newest version. Dkms install still doesnt work. So I think I have to build one myself?
February 22, 20233 yr You could check the config of the installed kernel, if these modules were already enabled, then it won't help if you rebuild with that same config nano /boot/config-5.10.110-rockchip-rk3588
February 22, 20233 yr Author ahsmem and binder are not set. Should be a good chance then to get it working if I rebuild the kernel. Gonna try that tomorrow. Thanks a lot! Edit: Can I just copy this config, set the needed values and rebuild the kernel with it? Edited February 22, 20233 yr by Prax
February 22, 20233 yr I would say that the deb have the kernel modules inside or built-in You could try this first: sudo apt update && sudo apt reinstall linux-image-legacy-rockchip-rk3588 Otherwise the default config on github has these already enabled.
February 22, 20233 yr Author Tried that. Getting the following error:"Reinstallation of linux-image-legacy-rockchip-rk3588 is not possible, it cannot be downloaded" Also tried updating the dependecies and to reinstall using aptitude. Error there is:"Cant find source to download version '23.02.0-trunk.0184' of 'linux-image-legacy-rockchip-rk3588' Any idea on how to reinstall?
February 22, 20233 yr Author Switched to nightly build. Binder and Ashmem are now activated in the config (/boot/config-5.10.110-rockchip-rk3588) but while kernel installation and at every reinstall I still get these errors: Building module: cleaning build area... make -j8 KERNELRELEASE=5.10.110-rockchip-rk3588 all KERNEL_SRC=/lib/modules/5.10.110-rockchip-rk3588/build....(bad exit status: 2) Error! Bad return status for module build on kernel: 5.10.110-rockchip-rk3588 (aarch64) Consult /var/lib/dkms/anbox-ashmem/1/build/make.log for more information. Kernel preparation unnecessary for this kernel. Skipping... Building module: cleaning build area... make -j8 KERNELRELEASE=5.10.110-rockchip-rk3588 all KERNEL_SRC=/lib/modules/5.10.110-rockchip-rk3588/build.....(bad exit status: 2) Error! Bad return status for module build on kernel: 5.10.110-rockchip-rk3588 (aarch64) Consult /var/lib/dkms/anbox-binder/1/build/make.log for more information. So I not only get them when I try to install the modules using dkms. I also get them when I reinstall the kernel. /var/lib/dkms/anbox-binder/1/build/make.log gives following error: "Your kernel does not support KProbes, but this is required to compile ashmem as a kernel module on kernel 5.7 and later" Edited February 22, 20233 yr by Prax
February 22, 20233 yr wget http://imola.armbian.com/beta/pool/main/l/linux-5.10.110-rockchip-rk3588/linux-image-legacy-rockchip-rk3588_23.02.2_arm64.deb sudo dpkg -i linux-image-legacy-rockchip-rk3588_23.02.2_arm64.deb wget http://imola.armbian.com/beta/pool/main/l/linux-5.10.110-rockchip-rk3588/linux-headers-legacy-rockchip-rk3588_23.02.2_arm64.deb sudo dpkg -i linux-headers-legacy-rockchip-rk3588_23.02.2_arm64.deb What is the output of cat /var/lib/dkms/anbox-binder/1/build/make.log Edited February 22, 20233 yr by royk
February 22, 20233 yr Author While installing the first .deb I still get the same errors as mentioned above when reinstalling. While installing the second .deb I get a ton of warning and errors that used functions are deprecated. Thanks for your help, can't say it often enough! Here are the cat of anbox-binder and anbox-ashmen. Cat of /var/lib/dkms/anbox-binder/1/build/make.log is following: DKMS make.log for anbox-binder-1 for kernel 5.10.110-rockchip-rk3588 (aarch64) Mi 22. Feb 22:22:42 CET 2023 make -C /lib/modules/5.10.110-rockchip-rk3588/build V=0 M=$PWD make[1]: Entering directory '/usr/src/linux-headers-5.10.110-rockchip-rk3588' CC [M] /var/lib/dkms/anbox-binder/1/build/deps.o CC [M] /var/lib/dkms/anbox-binder/1/build/binder.o CC [M] /var/lib/dkms/anbox-binder/1/build/binder_alloc.o CC [M] /var/lib/dkms/anbox-binder/1/build/binderfs.o In file included from ././include/linux/kconfig.h:7, from <command-line>: ./include/generated/autoconf.h:1720: warning: "CONFIG_ANDROID_BINDER_DEVICES" redefined error, forbidden warning:autoconf.h:1720 1720 | #define CONFIG_ANDROID_BINDER_DEVICES "binder,hwbinder,vndbinder,anbox-binder,anbox-hwbinder,anbox-vndbinder" | <command-line>: note: this is the location of the previous definition In file included from ././include/linux/kconfig.h:7, from <command-line>: ./include/generated/autoconf.h:2246: warning: "CONFIG_ANDROID_BINDERFS" redefined error, forbidden warning:autoconf.h:2246 2246 | #define CONFIG_ANDROID_BINDERFS 1 | <command-line>: note: this is the location of the previous definition /var/lib/dkms/anbox-binder/1/build/deps.c:20:3: error: #error "Your kernel does not support KProbes, but this is required to compile binder as a kernel module on kernel 5.7 and later" 20 | # error "Your kernel does not support KProbes, but this is required to compile binder as a kernel module on kernel 5.7 and later" | ^~~~~ make[2]: *** [scripts/Makefile.build:273: /var/lib/dkms/anbox-binder/1/build/deps.o] Error 1 make[2]: *** Waiting for unfinished jobs.... In file included from ././include/linux/kconfig.h:7, from <command-line>: ./include/generated/autoconf.h:1720: warning: "CONFIG_ANDROID_BINDER_DEVICES" redefined error, forbidden warning:autoconf.h:1720 1720 | #define CONFIG_ANDROID_BINDER_DEVICES "binder,hwbinder,vndbinder,anbox-binder,anbox-hwbinder,anbox-vndbinder" | <command-line>: note: this is the location of the previous definition In file included from ././include/linux/kconfig.h:7, from <command-line>: ./include/generated/autoconf.h:2246: warning: "CONFIG_ANDROID_BINDERFS" redefined error, forbidden warning:autoconf.h:2246 2246 | #define CONFIG_ANDROID_BINDERFS 1 | <command-line>: note: this is the location of the previous definition /var/lib/dkms/anbox-binder/1/build/binder.c: In function 'binder_translate_binder': /var/lib/dkms/anbox-binder/1/build/binder.c:2456:49: error: passing argument 1 of 'security_binder_transfer_binder' from incompatible pointer type [-Werror=incompatible-pointer-types] 2456 | if (security_binder_transfer_binder(proc->tsk, target_proc->tsk)) { | ~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: ./include/linux/security.h:258:56: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 258 | int security_binder_transfer_binder(const struct cred *from, | ~~~~~~~~~~~~~~~~~~~^~~~ /var/lib/dkms/anbox-binder/1/build/binder.c:2456:67: error: passing argument 2 of 'security_binder_transfer_binder' from incompatible pointer type [-Werror=incompatible-pointer-types] 2456 | if (security_binder_transfer_binder(proc->tsk, target_proc->tsk)) { | ~~~~~~~~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: ./include/linux/security.h:259:56: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 259 | const struct cred *to); | ~~~~~~~~~~~~~~~~~~~^~ /var/lib/dkms/anbox-binder/1/build/binder.c: In function 'binder_translate_handle': /var/lib/dkms/anbox-binder/1/build/binder.c:2506:49: error: passing argument 1 of 'security_binder_transfer_binder' from incompatible pointer type [-Werror=incompatible-pointer-types] 2506 | if (security_binder_transfer_binder(proc->tsk, target_proc->tsk)) { | ~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: ./include/linux/security.h:258:56: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 258 | int security_binder_transfer_binder(const struct cred *from, | ~~~~~~~~~~~~~~~~~~~^~~~ /var/lib/dkms/anbox-binder/1/build/binder.c:2506:67: error: passing argument 2 of 'security_binder_transfer_binder' from incompatible pointer type [-Werror=incompatible-pointer-types] 2506 | if (security_binder_transfer_binder(proc->tsk, target_proc->tsk)) { | ~~~~~~~~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: ./include/linux/security.h:259:56: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 259 | const struct cred *to); | ~~~~~~~~~~~~~~~~~~~^~ /var/lib/dkms/anbox-binder/1/build/binder.c: In function 'binder_translate_fd': /var/lib/dkms/anbox-binder/1/build/binder.c:2598:49: error: passing argument 1 of 'security_binder_transfer_file' from incompatible pointer type [-Werror=incompatible-pointer-types] 2598 | ret = security_binder_transfer_file(proc->tsk, target_proc->tsk, file); | ~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: ./include/linux/security.h:260:54: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 260 | int security_binder_transfer_file(const struct cred *from, | ~~~~~~~~~~~~~~~~~~~^~~~ /var/lib/dkms/anbox-binder/1/build/binder.c:2598:67: error: passing argument 2 of 'security_binder_transfer_file' from incompatible pointer type [-Werror=incompatible-pointer-types] 2598 | ret = security_binder_transfer_file(proc->tsk, target_proc->tsk, file); | ~~~~~~~~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: ./include/linux/security.h:261:54: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 261 | const struct cred *to, struct file *file); | ~~~~~~~~~~~~~~~~~~~^~ /var/lib/dkms/anbox-binder/1/build/binder.c: In function 'binder_transaction': /var/lib/dkms/anbox-binder/1/build/binder.c:3001:53: error: passing argument 1 of 'security_binder_transaction' from incompatible pointer type [-Werror=incompatible-pointer-types] 3001 | if (security_binder_transaction(proc->tsk, | ~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: ./include/linux/security.h:256:52: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 256 | int security_binder_transaction(const struct cred *from, | ~~~~~~~~~~~~~~~~~~~^~~~ /var/lib/dkms/anbox-binder/1/build/binder.c:3002:60: error: passing argument 2 of 'security_binder_transaction' from incompatible pointer type [-Werror=incompatible-pointer-types] 3002 | target_proc->tsk) < 0) { | ~~~~~~~~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: ./include/linux/security.h:257:52: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 257 | const struct cred *to); | ~~~~~~~~~~~~~~~~~~~^~ /var/lib/dkms/anbox-binder/1/build/binder.c: In function 'binder_ioctl_set_ctx_mgr': /var/lib/dkms/anbox-binder/1/build/binder.c:4956:51: error: passing argument 1 of 'security_binder_set_context_mgr' from incompatible pointer type [-Werror=incompatible-pointer-types] 4956 | ret = security_binder_set_context_mgr(proc->tsk); | ~~~~^~~~~ | | | struct task_struct * In file included from /var/lib/dkms/anbox-binder/1/build/binder.c:63: In file included from ././include/linux/kconfig.h:7, from <command-line>: ./include/generated/autoconf.h:1720: warning: "CONFIG_ANDROID_BINDER_DEVICES" redefined error, forbidden warning:autoconf.h:1720 1720 | #define CONFIG_ANDROID_BINDER_DEVICES "binder,hwbinder,vndbinder,anbox-binder,anbox-hwbinder,anbox-vndbinder" | <command-line>: note: this is the location of the previous definition In file included from ././include/linux/kconfig.h:7, from <command-line>: ./include/generated/autoconf.h:2246: warning: "CONFIG_ANDROID_BINDERFS" redefined error, forbidden warning:autoconf.h:2246 2246 | #define CONFIG_ANDROID_BINDERFS 1 | <command-line>: note: this is the location of the previous definition make[2]: *** [scripts/Makefile.build:273: /var/lib/dkms/anbox-binder/1/build/binderfs.o] Error 1 make[2]: *** Deleting file '/var/lib/dkms/anbox-binder/1/build/binderfs.o' In file included from ././include/linux/kconfig.h:7, from <command-line>: ./include/generated/autoconf.h:1720: warning: "CONFIG_ANDROID_BINDER_DEVICES" redefined error, forbidden warning:autoconf.h:1720 1720 | #define CONFIG_ANDROID_BINDER_DEVICES "binder,hwbinder,vndbinder,anbox-binder,anbox-hwbinder,anbox-vndbinder" | <command-line>: note: this is the location of the previous definition In file included from ././include/linux/kconfig.h:7, from <command-line>: ./include/generated/autoconf.h:2246: warning: "CONFIG_ANDROID_BINDERFS" redefined error, forbidden warning:autoconf.h:2246 2246 | #define CONFIG_ANDROID_BINDERFS 1 | <command-line>: note: this is the location of the previous definition make[2]: *** [scripts/Makefile.build:273: /var/lib/dkms/anbox-binder/1/build/binder_alloc.o] Error 1 make[2]: *** Deleting file '/var/lib/dkms/anbox-binder/1/build/binder_alloc.o' ./include/linux/security.h:255:56: note: expected 'const struct cred *' but argument is of type 'struct task_struct *' 255 | int security_binder_set_context_mgr(const struct cred *mgr); | ~~~~~~~~~~~~~~~~~~~^~~ cc1: some warnings being treated as errors make[2]: *** [scripts/Makefile.build:273: /var/lib/dkms/anbox-binder/1/build/binder.o] Error 1 make[1]: *** [Makefile:1920: /var/lib/dkms/anbox-binder/1/build] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-5.10.110-rockchip-rk3588' make: *** [Makefile:8: all] Error 2 Cat of /var/lib/dkms/anbox-ashmem/1/build/make.log is following: DKMS make.log for anbox-ashmem-1 for kernel 5.10.110-rockchip-rk3588 (aarch64) Mi 22. Feb 22:22:37 CET 2023 make -C /lib/modules/5.10.110-rockchip-rk3588/build V=0 M=$PWD make[1]: Entering directory '/usr/src/linux-headers-5.10.110-rockchip-rk3588' CC [M] /var/lib/dkms/anbox-ashmem/1/build/deps.o CC [M] /var/lib/dkms/anbox-ashmem/1/build/ashmem.o /var/lib/dkms/anbox-ashmem/1/build/deps.c:9:3: error: #error "Your kernel does not support KProbes, but this is required to compile ashmem as a kernel module on kernel 5.7 and later" 9 | # error "Your kernel does not support KProbes, but this is required to compile ashmem as a kernel module on kernel 5.7 and later" | ^~~~~ make[2]: *** [scripts/Makefile.build:273: /var/lib/dkms/anbox-ashmem/1/build/deps.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [Makefile:1920: /var/lib/dkms/anbox-ashmem/1/build] Error 2 make[1]: Leaving directory '/usr/src/linux-headers-5.10.110-rockchip-rk3588' make: *** [Makefile:12: all] Error 2 Edited February 22, 20233 yr by Prax
February 22, 20233 yr sudo apt remove dkms wget http://imola.armbian.com/beta/pool/main/l/linux-5.10.110-rockchip-rk3588/linux-image-legacy-rockchip-rk3588_23.02.2_arm64.deb sudo dpkg --force-all -i linux-image-legacy-rockchip-rk3588_23.02.2_arm64.deb sudo reboot sudo apt install waydroid sudo waydroid init Edited February 22, 20233 yr by royk
February 23, 20233 yr Author That fixed the problem. Thanks a lot! Now I only have to find a option to remote connect using wayland instead of x11.
February 23, 20233 yr Nice! The gnome-remote-desktop should work, you probably already have it installed.
February 23, 20233 yr Author It is installed and I enabled it but I cant connect. Is there any config I have to do to use it?
February 23, 20233 yr I don't know with what you try to connect it to, if you try to connect with vnc then "Enable legacy vnc protocol". It could be that the notification to accept the client was not visible, you could set "Require password" (3 dots after legacy vnc protocol) as workaround.
February 23, 20233 yr Author Tried with mstsc and with vnc can't connect. When I check grdctl status there isn't any credentials set while they are set in the ui. I also can't set credentials using grdctl, getting the error: "Cannot create an item in a locked collection" If I try to connect: VNC literally nothing happens client hangs trying to connect RDP I get asked for credentials, afterwards I have to confirm the cert and then it closes suddenly without a error. Edited February 23, 20233 yr by Prax
February 23, 20233 yr From the gui. Settings -> Sharing -> Remote Desktop You could update it with sudo apt install gnome-remote-desktop
February 23, 20233 yr Author I activated it by gui but I can't connect. Do I have to log off with the user before I can login remote? Edit: When I log off localy I can connect but I get a black screen and get disconnected after like 10 seconds Edited February 23, 20233 yr by Prax
February 23, 20233 yr Author xrdp was still enabled from armbian-config. I disabled and remove xrdp. Now I just cant login... getting an error from gnome-remote-desktop on the orangepi5 Feb 23 20:32:29 orangepi5 gnome-remote-desktop-daemon[6118]: Cannot load libcuda.so.1 Feb 23 20:32:29 orangepi5 gnome-remote-desktop-daemon[6118]: Cannot load libnvidia-encode.so.1
February 23, 20233 yr Did you set: Enable legacy vnc protocol with "require password" filled in a username and password Updated the package Try to connect with ip address instead of hostname Maybe there is a firewall in between or another service on the OPI running on the same port?
February 23, 20233 yr Author Yes I set all of this and updated the package. Think it was xrdp but removing it and rebooting didnt fixed it.
February 23, 20233 yr Perhaps you've installed something for nvidia? Check: apt list --installed *nvidia* if you find something from nvidia and remove with sudo apt remove ....
February 23, 20233 yr Author Im just an idiot ... tried to connect while no display was connected. If I just connect a display there is no problem. Is there any option to use rdp or vnc without a attached display?
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.