-
Notifications
You must be signed in to change notification settings - Fork 187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mention kernel 3.9 is required #226
Comments
You saved my day, tried to use librespot on an OrangePi Zero which only has a Legacy Kernel and was wondering we it does not work |
The complete error line is this: @Informatic how did you solve this, i have the same hardware here an would love to have librespot running on it |
I just upraded my box to mainline kernel. I've been using Armbian, so all I needed to do was just install following packages: |
Can't it be used without SO_REUSEPORT ? On old kernel it's working with --disable-discovery and registering with user/password. |
@herrernst I would like to reopen the problem - It is a big problem for most of the ARM users! Most of ARM users have old kernels like 3.0 and 3.4. I was able to compile librespot fine on armhf 3.4 kernel but I get @bjoerns1983 mentioned error while trying to run librespot with discovery enabled. Please try to change the code to support old ARM devices because I am trying to find a use for old phones with good DAC i.e. samsung galaxy s 2 kernel 3.0, lg g2 3.4 kernel running librespot in linux chroot etc. |
@Informatic - I found that the reuse_port is used in rust-mdns address_family.rs - if I comment out line 15 and cargo build (I am using spotty) on my ARM with kernel 2.6 then discovery works. |
Thanks @jr01 for your research. Could you do a code contribution via pull request - maybe this way it would be fixed sooner? :) I love that Librespot is just 12.8MB of ram and spotify is like more than 200MB! |
I could do that, but I am not a rust developer and I am very unsure if the change is correct and what side effects it may have. Maybe @plietar can help? |
Tried the workaround of jr01 and it works for me, no negative side effects till now. Struggled a bit till i compiled a patched version but i made a guide if somebody also wants to try: |
Issue migrated to librespot-org/issue-test#1 |
Hey,
when trying to run a binary built with
librespot-cross
container on "legacy" (3.4) Allwinner H3 (OrangePi Zero) Linux Kernel I noticed it crashes with "Protocol not available
" error when discovery is enabled. Sadly I don't have full error line, as I already resolved it and forgot to write it down.This error is thrown when calling
setsockopt
withSO_REUSEPORT
, which is only available since Linux Kernel 3.9 AFAIK. It'd be nice to mention it inREADME
, or find some solution to disable that syscall or ignore that error on unsupported systems. I'm not a rust developer myself, so wasn't even able to find a module (crate?) it is actually called in ;)Besides that everything works perfectly.
The text was updated successfully, but these errors were encountered: