Skip to main content

News

Topic: Sphere/MiniSphere on FreeBSD? (Read 1614 times) previous topic - next topic

  • N E O
  • [*][*][*][*][*]
  • Administrator
  • Senior Administrator
Sphere/MiniSphere on FreeBSD?
I just got FreeBSD 10.3 working on my Lenovo Thinkpad via GhostBSD+Mate installer. Please refresh my memory on what I'll need to get (Mini)Sphere compiled and running on this thing besides Allegro (which I'm getting via OctoPkg/`pkg install ...`), thanks!

I'll also try to update my personal MacBook Air build of MiniSphere to 4.2.0 this weekend. I'm a couple of weeks into my final full-time semester at college, so please forgive me for any delays in my response due to being busy.

edit: Turns out the allegro-devel is 5.0.9_4, so I'll probably have to build that from scratch too. +neo
  • Last Edit: September 18, 2016, 09:48:39 pm by N E O

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Sphere/MiniSphere on FreeBSD?
Reply #1
minisphere's external dependencies are Allegro (note: it should compile successfully against Allegro 5.0.x now, some features might be disabled though), libmng and zlib.  Duktape is included in the tarball and git repo.

I really need to get around to removing that libmng dependency, or at least make it optional.  It's only needed for Sphere 1.x animation API support, nothing in Sphere v2 uses it.
miniSphere 5.0b4 (stable: 4.8.8) - Cell compiler - SSj debugger - thread | on GitHub
For the sake of our continued health I very much hope that Fat Cerberus does not become skilled enough at whatever arcane art it would require to cause computers to spawn enourmous man eating pigs ~Rhuan

Re: Sphere/MiniSphere on FreeBSD?
Reply #2
I would check the ports tree version of Allegro, the ports tree usually has newer versions.

Of note, 'devel' on FreeBSD usually means 'bleeding edge', not 'development libraries and headers'

EDIT: If you do build Allegro from scratch, I would try to be sure to configure for actual OSS support rather than using ALSA emulation.
  • Last Edit: September 18, 2016, 11:49:46 pm by Flying Jester

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Sphere/MiniSphere on FreeBSD?
Reply #3

Of note, 'devel' on FreeBSD usually means 'bleeding edge', not 'development libraries and headers'


Weird that it would be Allegro 5.0.9, then.  That version is over 3 years old.
miniSphere 5.0b4 (stable: 4.8.8) - Cell compiler - SSj debugger - thread | on GitHub
For the sake of our continued health I very much hope that Fat Cerberus does not become skilled enough at whatever arcane art it would require to cause computers to spawn enourmous man eating pigs ~Rhuan

Re: Sphere/MiniSphere on FreeBSD?
Reply #4
That doesn't sound too ridiculous. I would, however, be surprised if the ports tree devel version was that old.

  • N E O
  • [*][*][*][*][*]
  • Administrator
  • Senior Administrator
Re: Sphere/MiniSphere on FreeBSD?
Reply #5
On freshports 'devel/allegro' AND pkg 'allegro' is 4.4.2_5, while 'devel/allegro-devel' / 'allegro-devel' is 5.0.9_whatever. I'm gonna try to build against the 5.0.9 and see what happens.

Update #1: I'm trying to build allegro 5.2.1.1 from scratch and CMake is complaining that libXcursor isn't found (more specifically, that the function XcursorImageCreate is not found), even though OctoPkg is clearly telling me I have version 1.1.14_3 and /usr/local/lib/libXcursor.so and .a clearly exist. Fk building from scratch, I'm gonna try 5.0.9.

Update #2: Compiling minisphere is complaining that for every #include <allegro5/allegro.h> line allegro.h is not found. Short of manually editing every single instance to point to the correct allegro.h, how can I solve this? Can I just symlink the existing allegro-devel headers to the appropriate location to make it work?
  • Last Edit: September 24, 2016, 12:08:02 am by N E O

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Sphere/MiniSphere on FreeBSD?
Reply #6
There's actually only a single location where allegro.h is included - in minisphere.h.  Compilers are too stupid to realize that though and complain every time the parent header is included.  So you should be good just changing it there.
miniSphere 5.0b4 (stable: 4.8.8) - Cell compiler - SSj debugger - thread | on GitHub
For the sake of our continued health I very much hope that Fat Cerberus does not become skilled enough at whatever arcane art it would require to cause computers to spawn enourmous man eating pigs ~Rhuan

  • N E O
  • [*][*][*][*][*]
  • Administrator
  • Senior Administrator
Re: Sphere/MiniSphere on FreeBSD?
Reply #7
Update: I added `-I/path/to/allegro/include` to every compilation line in the Makefile since that's why allegro5/allegro.h wasn't being found and get errors. I'm not on that laptop at the moment so I can't yet add the actual error message here, but I'll edit it in when I turn it on.

  • Fat Cerberus
  • [*][*][*][*][*]
  • Global Moderator
  • miniSphere Developer
Re: Sphere/MiniSphere on FreeBSD?
Reply #8

Update: I added `-I/path/to/allegro/include` to every compilation line in the Makefile since that's why allegro5/allegro.h wasn't being found and get errors. I'm not on that laptop at the moment so I can't yet add the actual error message here, but I'll edit it in when I turn it on.


Did you ever find the cause of the build errors?
miniSphere 5.0b4 (stable: 4.8.8) - Cell compiler - SSj debugger - thread | on GitHub
For the sake of our continued health I very much hope that Fat Cerberus does not become skilled enough at whatever arcane art it would require to cause computers to spawn enourmous man eating pigs ~Rhuan