COMMUNITY

[Solved] Raspberry pi setup issue

raspberrypi
linux

#1

I’m trying to install haxe, lime, openfl on a raspberry pi 3+ with a clean raspbian stretch using a nice script by gepatto https://gist.github.com/gepatto/325441767959d79e00378e54cf9f4ad9
Which I found through the long thread here: http://community.openfl.org/t/raspberry-pi-2-anyone/1888

I encountered a few issues:

  • haxelib install hxp (was missing).
  • sudo apt-get install default-libmysqlclient-dev (to fix script error).
  • export HAXE_STD_PATH=/usr/lib/haxe/std (to fix can’t find standard library errors).

But now I’m stuck during tools & lime rebuild: (lime rebuild tools linux -rpi -v)
Error: Error while running command
arm-linux-gnueabihf-g++ -Ilib/pixman/src -DHAVE_CONFIG_H -DNATIVE_TOOLKIT_HAVE_PNG -Ilib/png -msse3 -mavx -c -fvisibility=hidden -O2 -fpic -fPIC -Wno-overflow -DHX_LINUX -DRASPBERRYPI=RASPBERRYPI -DHXCPP_VISIT_ALLOCS -DHXCPP_API_LEVEL=0 -I/home/pi/Development/haxe/lib/hxcpp/4,0,4/include -x c ./lib/pixman/src/pixman.c -o/home/pi/Development/haxe/dev/lime/project/obj/linux-rpi/ef0264d7_pixman.o

arm-linux-gnueabihf-g++: error: unrecognized command line option ‘-msse3’
arm-linux-gnueabihf-g++: error: unrecognized command line option ‘-mavx’; did you mean ‘-marm’?

I’m not sure why it adds -msse3 and -mavx. I thought those options weren’t supported on the raspberry. But removing them from pixman/files.xml causes all sorts of issues.

Any ideas on how to fix this?


(Patrick Gutlich) #2

Hi Samverner,

My script is cloning the latest version of lime, and it’s only been tested (by me) on the Pi up until version 6.4.0
So I need to change my script to clone the last known working tag, in this case 6.4.0, and also install the version of openfl that goes with it. So I guess that would be lime 6.4.0 and openfl 8.3.0

You are indeed running into errors caused by optimisations that are not available on the Pi.
I haven’t had the time yet to test versions 7.0.0 and 7.1.0 of lime on the Pi.

I’ll spend some time today and modify my script(s) to only clone the last known working tag.
And get back here when it’s done.


(Patrick Gutlich) #3

Lime 7.0.0 and openfl 8.4.0 should work.
you can try this manually by installing openfl with
haxelib install openfl 8.4.0
and going in the lime directory that was cloned in my script and do a hard reset to tag 7.0.0
git reset --hard ffe75cb33c73febcd8f5ae2d016e533e01932edc; git submodule update
and then rebuild lime:
lime rebuild lime rpi

I’ll work on my setup-script next


(Patrick Gutlich) #4

Could you try the interactive script again frmo my GIST?
It should install openfl 8.4.0 and lime 7.0.0

Lime 7.1.1 is indeed not working on the Rapsberry Pi
because Pixman needs to be properly configured for the Pi.
Unfortunately I don’t have knowledge to do this right now.
I can disable the mmx and sse instructions but somehow It still tries to compile for x86 instead of ARM.

UPDATE:
I fixed the SSE errors in lime 7.1.1 's submodule pixman.
When that commit of pixman is referenced in a new lime commit/tag
it should work and you can clone the latest lime again instead of 7.0.0 as per my gist


#5

Hi Gepatto, thank you very much for the help!
Somehow I did not receive any notification emails. Currently I’m extremely busy but I’ll try to take a look at it asap and get back to you. Thanks again!


(Patrick Gutlich) #6

No Worries. Take your time!


#7

I did a clean install of Raspbian Stretch, used your script, and it worked like a charm. The PiratePig sample is up and running. Thank you very much for the effort! It would have been totally fine just working with a slightly older version of lime & openfl, but this is even better.

I did encounter a small issue with the script on a clean install, as the ~/.lime directory does not yet exist line 169 fails with a “no such file or directory”. So I created the config file manually. And I indeed had to add the std path manually as well. But those are pretty much negligable, and stuff just works now. Thank you again.


(Patrick Gutlich) #8

Good to hear It’s working now, have fun!

I’ll see If I can fix the ~/.lime path error.