-
-
Notifications
You must be signed in to change notification settings - Fork 63
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
build on ARMhf7 #32
Comments
This shouldn't work because ISA is different:
Sadly I don't have ARM devices and emulation probably would be slow, so I have some wild guesses instead:
It doesn't work properly on Linux, see #29, you need 1.x or 3.x. It shouldn't affect the process of plugin loading though and redirecting output to
Enable logging and check the logs:
What's the output of:
You also need to:
on Linux hosts but at least mpv should load (you should see it in the log). |
by the output of
and the noticeable info about
and logs from electron
I didn't messed with and electron 3.x is not available for ARM yet. and 1.x has some other problems with starting up regardless of this project so I left that aside for another time. so far 2.0.7 had no warnings or error. maybe #29 is not related to ARM based machines? |
Libs in linux_host are compiled for x86-64, in glibc_arm for arm, you can't do that. Though seems like mpv.js plugin doesn't use any symbols from libppapi, that's why it worked for you (was needed just to make compiler happy about missed -l). I commited fixed binding.gyp, check it out.
That's the actual problem. They were compiled dynamically. Try to run example with:
Seems like they're linked statically on x86 Linux because linux_host doesn't contain .so for ppapi_cpp and ppapi_gles. Probably some compiler flag is needed to fix that. In meantime you can just remove .so files from |
with .so files removed
Do I have to build pepper_49 from source files located in
also ARM libs in alternate pepper archives are the same. |
Yea, seems like it. Did you try Try
Seems like |
yes only this time
I did it
disable them by changing the CFLAGS in /pepper_49/src/nacl_io/Makefile
only now there are some issues with electron.(log file)
|
Nice, so we can provide instructions for arm in readme too, if everything will eventually work.
You can build only required ppapi_cpp and ppapi_gles2 by passing
Show the output of
|
for build/Release/mpvjs.node returned |
Can you send me that libppapi_cpp.a? |
Ah, I get it! It uses C++11 ABI:
Remove
line from binding.gyp and rebuild plugin. Or add |
everything seems to be working as expected. although CPU usage is really high, about 98%. and video playback is super slow. but the main issue is solved. I might have to install Arch or Raspbian Lite and use X to open electron instead of a desktop environment. that will save some resource. also #25 occurred but it's fine I will test everything on 1.8.7 later. no signs of #29 though. we can now add my files to prebuilt binaries. what node version did you use to build it? I am using 10.2.0 |
Nice, I'm glad it works for you. Closing, will add readme instructions later.
Need to enable hardware decoding (#5) to fix that, but I guess it's not trivial.
It should be purely cosmetic.
That's nice.
Sure, send me
I have LTS branch right now but it shouldn't matter because plugin doesn't need any node's symbols. I'm using
command to build plugin against fixed node version. |
It seems to be a known problem btw: electron/electron#12329 |
tested on 1.7.9 and 2.0.7 |
Nice, thank you, added to 0.3.0 github release. If I understand everything correcty, the name prebuild-install expects should be Could you test I probably need to setup ARMv7 VM anyway, in case if I would update code of the plugin often. |
Hm, no, it should be |
both mpv and pepper_49 support ARM. so I tried to build this project with libraries under
/pepper_49/lib/glibc_arm
althoughlppapi
is missing so I copied the one underlinux_host
.and to put everyting together. I used electron 1.8.7 on RaspberryPi 3 (armhf7)
somehow it faild to even load the page. so I used 2.0.7. now it says "couldn't load the plugin". so any advice?
The text was updated successfully, but these errors were encountered: