Log In  

I'm trying to run PICO-8 on a chromebook. ARM cpu, 2gb ram. I have problems, and I understand it's not supported but hey, maybe someone can help!

I set the chromebook in dev mode, downloaded the ARM PICO-8 compiled for raspberry pi, unzipped it, remounted the partition so to run executables:

sudo mount -i -o remount,exec /home/chronos/user

But when I run pico this happens:

chronos@localhost ~/pico $ ./pico8
./pico8: error while loading shared libraries: libbcm_host.so: cannot open shared object file: No such file or directory

So I downloaded all the libraries for the Pi firmware and put them in a neat directory and repointed the LD path before starting the pico:

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"`pwd`/libs" && ./pico8

and the result is a disappointing:

* failed to open vchiq instance

This happens because... there's no /dev/vchiq device.

So I'm a bit at a loss. I understand that i'm far far away from supported-land. But I imagine it would not be too hard for you fine people to provide an ARM version compiled for something that is not a Pi. Beside, chromebooks are getting increasingly common and cheap, and it would be great to be able to PICO on such a cheap portables!

P#21096 2016-05-22 15:40 ( Edited 2017-04-03 21:26)

do not use the non dynamic version, use the pico8_dyn executable. The libbcm_host can only work on Pi, and you are facing various problem if you try to use it on other systems.

You will need to have SDL2 installed on your device, but that's all pico8_dyn will ask

P#21101 2016-05-22 16:55 ( Edited 2016-05-22 20:55)

Thanks a lot for the hint!
Finding precompiled libSDL for ARM is harder than expected, and it's going to be a while before I manage to crosscompile it. Chromebooks do not come with much and for reasons I'm trying really hard not to install chrouton.

Alas in the meantime I only managed to find SDL compiled for Pi.
And as expected:

./pico8_dyn: symbol lookup error: /usr/local/lib/libSDL2-2.0.so.0: undefined symbol: bcm_host_init

Well, that was not entirely unexpected. Any hints on what to do, except trying to compile SDL targeting ARM? is a statically compiled version of pico going to be available?

P#21110 2016-05-22 19:49 ( Edited 2016-05-22 23:52)

It's apparently easy to get it to compile for a Chromebook, so could have a go at that until an official version for chromebooks shows up, if ever.

P#21118 2016-05-22 21:09 ( Edited 2016-05-23 01:09)

gamax92 I'm not sure where you found that it's easy to compile SDL for chromeos, but I managed to target successfully ARM linux.

Once installed on the chromebook though this happens:

SDL Error: No available video device

** FATAL ERROR: Unable to initialize SDL

Run as root, it simply segfaults.
And since it's not a developer image of chromeos, it does not dump the image, even changing /proc/sys/kernel/core_pattern

I'm starting to run out of things to do.

P#21168 2016-05-23 15:25 ( Edited 2016-05-23 19:25)
1

Hey tsojcanth

I do plan to formally support Chromebooks at some stage, but not until I have more time to maintain the extra build. In the meantime, I'll include a no-bcm binary in the next update to make things easier.

Regarding the video device error -- this is sometimes an indication that you were missing some development libraries when building SDL. Before running configure, try installing the packages listed here until Build Dependencies: https://hg.libsdl.org/SDL/file/default/docs/README-linux.md

When configure completes, it should tell you which video drivers are available.

P#21174 2016-05-23 15:46 ( Edited 2016-05-23 19:49)

ZEP: so we will be able to run it on nearly all ARM devices? humm interesting I have a platform I really want to see Pico-8 running :D

P#21176 2016-05-23 15:52 ( Edited 2016-05-23 19:52)

Hey Zep,

First, thanks for the build.

Second, feel free to hit me up with binaries for testing or if you want me to investigate something specific.

As for the missing library: it's probably a permission problem, when run as root the permission error does not happen, instead it segfaults directly. As /etc/sudoers is not writable (not even as root)

Tonight I'm a bit spent (3 hours of attempts after work is enough) but tomorrow I'll try to compile libSDL straight on the chromebok using the gentoo ARM toolchain (which apparently works fine).

There is also the alternative of compiling Pico targeting NaCl (but without the source I can't try). It would run slower, but given it's trying to emulate an 80s' console it should not be a problem :)

And libSDL targets NaCl allright too.

P#21177 2016-05-23 16:10 ( Edited 2016-05-23 20:10)

Would it be possible to use Native Client to bring Pico-8 to the Chromebooks? That would be HUGE for schools!

Looks like there are a few Lua/SDL projects already using NaCL (this was the first I found, http://leafo.net/aroma/).

P#22691 2016-06-11 16:26 ( Edited 2016-06-11 20:26)

I'm running unbuntu via chrosh on a Chromebook 3.
pico8 works just fine on it.
There are a few issues with crashing when working in windowed mode.

P#22735 2016-06-12 06:28 ( Edited 2016-06-12 10:28)

I hope that support for Chromebooks means support on Chrome OS, not just support for the hardware under Linux (though that's cool too!)

P#22768 2016-06-12 14:17 ( Edited 2016-06-12 18:17)

gozar: Yeah supporting NaCl would be awesome.
Johnnyri: have you tried chrouton?

P#22769 2016-06-12 14:59 ( Edited 2016-06-12 18:59)

@tsojcanth: That's how I installed it.

P#22815 2016-06-13 03:09 ( Edited 2016-06-13 07:09)

@tsojcanth: Did you have any success installing it on your ARM chromebook? I'm having a difficult time.

P#39051 2017-04-03 17:26 ( Edited 2017-04-03 21:26)

[Please log in to post a comment]

Follow Lexaloffle:          
Generated 2024-03-28 11:40:56 | 0.014s | Q:31