Skip to main content

News

Topic: Sphere 1.5, 1.6 beta (Read 35100 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
Re: Sphere 1.5, 1.6 beta
Reply #60
Oh yeah. And I don't have 32-bit gcc or any of the libraries to make this work on my machine.

Do you have GDB or Valgrind installed? Both libjs and all of Sphere are compiled with debugging symbols enabled by default, so we can get informative stack traces and likely see where it is failing.

Also, I forgot to mention that the SDL_GL video driver doesn't work. I had to add to its SConscript to make it link with GL, and even then it seems to crash from time to time. sdl32 works fine, although it's very slow.
  • Last Edit: January 22, 2014, 01:55:14 pm by Flying Jester

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: Sphere 1.5, 1.6 beta
Reply #61
Ah, sorry. Only seeing your post just now. I do seem to have GDB installed. How do I invoke it?

Re: Sphere 1.5, 1.6 beta
Reply #62
Code: [Select]

gdb ./engine
run


When it crashes, type `backtrace`, and we'll check the output.

Type `quit` to stop gdb.
  • Last Edit: January 25, 2014, 09:19:47 pm by Flying Jester

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: Sphere 1.5, 1.6 beta
Reply #63
Okay, wow, that is convenient.

Code: [Select]
vincent@vincent-K93SV:~/src/sphere/sphere/build/linux$ gdb ./engine
GNU gdb (GDB) 7.6.1-ubuntu
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /home/vincent/src/sphere/sphere/build/linux/engine...(no debugging symbols found)...done.
(gdb) run
Starting program: /home/vincent/src/sphere/sphere/build/linux/./engine
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
/dev/dsp: No such file or directory
[New Thread 0xb70a9b40 (LWP 13950)]
[New Thread 0xb68a8b40 (LWP 13951)]
Error opening sound device, is it busy perhaps?
Game: "startup"
Parameters: ""
[New Thread 0xb5d01b40 (LWP 13952)]

Program received signal SIGSEGV, Segmentation fault.
0x08195990 in SetClippingRectangle ()
(gdb) backtrace
#0  0x08195990 in SetClippingRectangle ()
#1  0xb70b85b1 in InitVideo () from /home/vincent/src/sphere/sphere/build/linux/system/video/sdl32.so
#2  0xb7ebf474 in SwitchResolution(int, int) () from /usr/lib/libunix.so
#3  0x080547c9 in CGameEngine::Run() ()
#4  0x080e3d09 in DoRunGame(char const*, char const*) ()
#5  0x080e4284 in RunGame(char const*, char const*) ()
#6  0x080e3af5 in RunSphere(int, char const**) ()
#7  0xb7ec07b0 in main () from /usr/lib/libunix.so
#8  0xb7afb905 in __libc_start_main (main=0x8050c30 <main@plt>, argc=1, ubp_av=0xbffff124, init=0x8127610 <__libc_csu_init>, fini=0x8127680 <__libc_csu_fini>,
    rtld_fini=0xb7fed5f0 <_dl_fini>, stack_end=0xbffff11c) at libc-start.c:260
#9  0x08051961 in _start ()
(gdb) quit
A debugging session is active.

Inferior 1 [process 13946] will be killed.

Quit anyway? (y or n) y

Re: Sphere 1.5, 1.6 beta
Reply #64
Code: [Select]
Hmm. Makes me wonder if SDL is actually initializing correctly. Try adding this:

[code = c++]
if(SDLScreenBuffer==NULL){
  fprintf(stderr, "SDLScreenBuffer is null\n");
  return false;
}


in sphere/source/video_unix/sdl32/sdl32.cpp at line 371 (just before the only call to SDL_ShowCursor), and then rerun scons. That will make the SDL32 driver tell Sphere it couldn't initialize if the screen surface couldn't be made. Not a bad thing to do have a check for in any case, actually.

That will make Sphere quit gracefully instead of crashing, if I'm right about why it's failing.

We could also try running Sphere under gdb with the SDL_GL driver selected, too, just to see where that is crashing.
  • Last Edit: January 27, 2014, 03:52:44 pm by Flying Jester

  • DaVince
  • [*][*][*][*][*]
  • Administrator
  • Used Sphere for, like, half my life
Re: Sphere 1.5, 1.6 beta
Reply #65
I deleted the build folder, cleaned scons, then reran it. At first my output was like this:
Code: [Select]
/home/vincent/src/sphere/sphere/build/linux/system/video/: cannot read file data: Is a directory
Video subsystem could not be initialized...

But then I realized it's because I didn't run config yet. (It's sensible to set a default!)
Then I selected sdl32, and it still crashes with a segfault:
Code: [Select]
$ ./engine 
/dev/dsp: No such file or directory
Error opening sound device, is it busy perhaps?
Game: "startup"
Parameters: ""
Segmentation fault (core dumped)


GDB output:
Code: [Select]
Reading symbols from /home/vincent/src/sphere/sphere/build/linux/engine...(no debugging symbols found)...done.
(gdb) run
Starting program: /home/vincent/src/sphere/sphere/build/linux/./engine
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/i386-linux-gnu/libthread_db.so.1".
/dev/dsp: No such file or directory
[New Thread 0xb70a9b40 (LWP 4926)]
[New Thread 0xb68a8b40 (LWP 4927)]
Error opening sound device, is it busy perhaps?
Game: "startup"
Parameters: ""
[New Thread 0xb5d01b40 (LWP 4928)]

Program received signal SIGSEGV, Segmentation fault.
0x08195990 in SetClippingRectangle ()
(gdb) backtrace
#0  0x08195990 in SetClippingRectangle ()
#1  0xb70b85ef in InitVideo () from /home/vincent/src/sphere/sphere/build/linux/system/video/sdl32.so
#2  0xb7ebf474 in SwitchResolution(int, int) () from /usr/lib/libunix.so
#3  0x080547c9 in CGameEngine::Run() ()
#4  0x080e3d09 in DoRunGame(char const*, char const*) ()
#5  0x080e4284 in RunGame(char const*, char const*) ()
#6  0x080e3af5 in RunSphere(int, char const**) ()
#7  0xb7ec07b0 in main () from /usr/lib/libunix.so
#8  0xb7afb905 in __libc_start_main (main=0x8050c30 <main@plt>, argc=1, ubp_av=0xbffff104, init=0x8127610 <__libc_csu_init>, fini=0x8127680 <__libc_csu_fini>,
    rtld_fini=0xb7fed5f0 <_dl_fini>, stack_end=0xbffff0fc) at libc-start.c:260
#9  0x08051961 in _start ()
(gdb) quit

Seems to be the same? Though maybe I'm overlooking a change.

Re: Sphere 1.5, 1.6 beta
Reply #66
You could try running SDL_GL, too. I pushed the changes that fix it (linking to OpenGL...no idea how it would work without that in the first place).

In GDB, after it breaks, what is the output of `mappings`?

Re: Sphere 1.5, 1.6 beta
Reply #67
@Rahkiin: Could you perhaps try compiling Sphere from Git on OS X, but using the Linux profile?

The Linux profile basically means 'use SDL', so I'd be interested to see if/why it fails.

  • Rahkiin
  • [*][*][*]
Re: Sphere 1.5, 1.6 beta
Reply #68
Part 1 of my quest to building Sphere for Mac.

In this quest, I will be trying to build (Do or do not, there is no try -- Yoda) building Sphere for Mac from source. I will explain everything I do so that 1) It becomes a funny story, 2) I can be judged about how much I suck at SCons, 3) Others can reproduce what I do and build Sphere themselves.
Some parts will not need to be reproduced because I put them on the git repo.

First, a git clone of the sphere repository.
It seems Sphere uses some obscene building system called SCons, so installing it from the website.
Then scons nags about sdl, so I install SDL2 with brew install sdl2. Seems I needed SDL1, so installed that.
Then it started about wxWidgets, presumably needed for the config program. Installing that.
But even after installing wxWidgets, it does not build the config because wxMac is broken, kinda. Instead, I removed config from the build. (I will push this to the repo. Nobody needs that silly program anyways.)

Executing scons once more:

Code: [Select]

source/engine/video.hpp:11:2: error: unsupported platform
#error unsupported platform


Seems that you failed to use the correct macros on platform-specific stuff. So I fixed that using information on this page: http://sourceforge.net/p/predef/wiki/OperatingSystems/

I created a platform.h in common/ that generates macro-definitions for all platforms (we use). Then I include that file where it is needed. Now the checking for compiler stuff is in 1 place and can be easily updated. Example for video.hpp:

Code: [Select]

#include "platform.h"

#if SPHERE_WIN32
# include "win32/win32_video.hpp"
#elif SPHERE_MAC_OSX
# include "mac/mac_video.h"
#elif SPHERE_UNIX
# include "unix/unix_video.h"
#endif


(Sidenote, the use of '../common' everywhere is useless, as common is included in the search path. At least, here it is.)

By defining the SPHERE_* macros as 1, we can use a simple #if and #elif, because a non-defined macro is 0. Cleans up :)
I also included compiler macros: SPHERE_MSC, SPHERE_CLANG, SPHERE_GCC, SPHERE_MYNGW.
And then I added SPHERE_STDCALL that only expands to __attribute__((stdcall)) on SPHERE_WIN32. It cleans up dozens of warnings on my side.
I can't confirm the working of the platform macros that are not SPHERE_MAC_OSX. I will push it: please (@FlyingJester) try it out on your Gentoo machine and @Radnen/@Neo try it out on windows. :)

It builds! Until it tells me it can't find audiere.

In the next part of our quest, part 2, we will build Audiere and see what else crosses our road.
  • Last Edit: April 24, 2014, 09:23:43 am by Rahkiin

  • Rahkiin
  • [*][*][*]
Re: Sphere 1.5, 1.6 beta
Reply #69
Building Sphere for OSX: Part 2.

This is part 2 of my adventures, when building Sphere Vanilla from source, for Mac OSX Mavericks. In the previous chapter, I downloaded the sources, installed wxWidgets and changed configurations to exclude the config app (wxMac is broken). I then updated source code of Sphere to fix a lot of warnings and platform errors. (I push these so you don't have to).

If you ever want to reproduce this: sorry for the hasty texts, but when building such a horrible thing, one does not want to write every step down cleanly.

So I downloaded Audiere. It has some odd build system. But i started with ./bootstrap. It told me I had no libtoolize.
A brew install libtool solved that, except I already had libtool. Therefor I symlinked libtoolize to glibtoolize (because brew renamed its packages to not cause conflict.)
Now bootstrap worked, and it generated configure. Running configure succeeds, at try one! Time for make.
Yeah! It has an error! Someone forgot to include stdlib for malloc in utility.h.
Next, error: undeclared identifier wxOPEN. So what is an audio-lib doing with WxWidgets?
It seems to be one of the examples. Fine: remove it from the build. (Makefile SUBDIRS). Done :)
Running make install to install the library.

I fear for Corona...

But first, running 'scons' again on sphere. Surprise: it does not find audiere.h. So I add -I/usr/local/include to the compiler construct, next to -DNO_WRITE_MNG (because I am lazy and have no clue how SCons works).
Now it continues.

Next up: can't find jsapi.h.
It would be cool if such a package with thousands of dependencies could just deliver these dependencies too..
Googling that file sends me directly to SpiderMonkey. I am going to build it from source.

EDIT: In part 3, I discover that downloading the whole tree with history can be avoided by downloading a tar. http://hg.mozilla.org/mozilla-central/file/tip and click on tar at the top. I tried to download with HG so you will find my adventures below. Just don't try it at home (tm).

First, my HG is screwed up due to the Mavericks update, so reinstalling that using brew. After doing a brew doctor and brew link overwrite, HG works again.
Mercurial is surprisingly slower than git... (already waiting 15min)

In part 3 we will be continuing our quest to build Sphere for Mac! We will start by building SpiderMonkey. Because HG takes ages, I might first update gitignore and the buildfiles to skip the config. And then I will push that to git.
  • Last Edit: April 24, 2014, 09:17:02 am by Rahkiin

  • Rahkiin
  • [*][*][*]
Re: Sphere 1.5, 1.6 beta
Reply #70
There we are, with part 3 of our grand quest to building Sphere for Mac!

In part 2 we installed Audiere, which was a pain due to its dependencies. Then we configured the build to actually see audiere.h. Then I fixed mercurial for Mavericks and started its download. It is still busy. (That is, 7 minutes after posting my last post). Sigh.

So instead, I will fix the code of Sphere and its build configuration, to skip the examples and include the platform.h. If you are someone trying to reproduce what I do: you don't need to do this. I will update the project on GitHub.
I like where I put the include-flag for Audiere, so I keep it there, but I add a comment line for future maintainers.

Somehow, .o files are not excluded from git. Which is odd, because most often that is the first thing you add to gitignore. So I add a UNIX section and add *.o. Git status tells me that there is data in build/linux/docs. On github, it only has an engine.ini in linux/. Excluding the docs folder.
There seems to be some kind of database file for SCons: adding it do gitignore too.

I have seriously no clue how SCons works, but in the SConscript where I removed 'config', there already is a statement to add a folder in case of a unix build. I add an else clause and put config there. Now config is build on everything but Unix.
If another maintainer can tell me how I can add a clause specially for Mac, please :)

Now, HG tells me:
Code: [Select]

added 179880 changesets with 1008534 changes to 155940 files.

It does kind of explain why it took so long. (It is still busy 17 min after my last post).

Great, i accidentally deleted the mozilla directory because I put it in sphere/...
So I forgot to read the SM page, and it tells me: "To avoid downloading the full history, download the tar by clicking on tar at http://hg.mozilla.org/mozilla-central/file/tip". (Updated part 2)
For me, it is 168MB. Now is hoping that SM has a stable API and Sphere can use the latest version.

WARNING: Scroll below, because Sphere is so extremely outdated that it is not fixable for the newest SpiderMonkey. Below, we try to get an ancient (2009) spidermonkey running.

Untar the directory. I never understand the tar command, so i just open the file using 'open ...tar.gz'.
Code: [Select]

open *.tar.gz (name is dependent on last commit id)
cd mozilla-central<tab>
cd js/src


Mozilla tells me I can only use 1 specific version of autoconf: 2.13, and nothing later. Of course I have 2.68. Lets try it anyway.
Code: [Select]

autoconf

And No, it does not work. I think that on this quest, at least one thing has to be wrong with every step...

I must say I am surprised: homebrew tells me there is a 2.13 package for me!
Code: [Select]

brew install homebrew/versions/autoconf213

There was some link problem: I don't think it is a big trouble-file, so I renamed the standards.info to standards.info_bak.
Now that I have autoconf213, lets try it again.

Code: [Select]

autoconf213
./configure

What a fun: I have Python 2.7.2 but we need at least 2.7.3 (but not 3). Brew has python 2.7.6, so lets try:
Code: [Select]

brew install python
brew link python


After running above commands, I had to add the full python 2.7.6 path before ./configure
Code: [Select]

PYTHON=/usr/local/Cellar/python/2.7.6_1/bin/python2.7 ./configure


Now running make.
...
I almost can't believe it: no errors! I finished with make install.

Lets try SCons again on Sphere. Nope, it can't find SM.
Make install installed the headers in  /usr/local/include/-/mozjs-31a1/. Lets fix that by moving it to /usr/local/include/mozjs.
When SCons still can't find the headers, I discovered that it looks only in /usr/bin/mozjs and not in /usr/local/bin/mozjs. I added that searchpath too. I also added an error when it can't find the javascript engine.

So, running scons throws some errors (surprise!):
Code: [Select]

/usr/local/include/mozjs/mozilla/NullPtr.h:17:6: error: "clang version natively supporting nullptr is required."
/usr/local/include/mozjs/js/TypeDecls.h:23:10: fatal error: 'js-config.h' file not found

It also throws a bunch of warnings about C++11. The first error tells me I need to activate C++11 in clang. I added -std=c++11 to the compiler flags for linux, but again, this should only be done when using Clang. But I have no clue how to do that. Maybe other do.

The c++11 switch dismisses a lot of warnings, and the first error. Now, the second error.
For some reason, make install did not install js-config.h. I am lazy and copy it by hand.
Code: [Select]

cp mozilla-central/js/src/js/src/js-config.h /usr/local/include/mozjs/
scons


I forgot to platform-erize network.hpp (I will push this to GitHub ofcourse), solving an error.

Now, I am going to cry for a bit: I see a lot of errors coming from the Sphere engine code about missing JS declarations. Three of them:
Code: [Select]

source/engine/ss_functions.table:6:1: error: unknown type name 'JSBool'
source/particle_engine/ScriptInterface.hpp:87:41: error: use of undeclared identifier 'JS_TRUE'
source/engine/ss_functions.table:16:1: error: unknown type name 'uintN'


It seems JSBool has become bool, JS_TRUE becomes true and JS_FALSE becomes false. That is an easy fix.
The documentation does not say anything about removing uintN: instead, it is noted that uintN is the native unsigned int, and intN is the native int. So I replaced those.

Next problem: JS_AddRoot is gone and made place for more specific functions, as seem https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/JSAPI_reference/JS_AddRoot.

Ok, I think I give up on refactoring all of Sphere's javascript code... The documentation does not event seem to match the current code.

I am rolling back the changes I made to the code, and instead am going to try to get the VERY old SpiderMonkey: from 2009. version 1.8.
Code: [Select]

wget http://ftp.mozilla.org/pub/mozilla.org/js/js-1.8.0-rc1.tar.gz
tar xvzf js-1.8.0-rc1.tar.gz
cd js/src
make BUILD_OPT=1 -f Makefile.ref


Wow, not even a configure! It also fails. Something about assigning to va_list. I know that clang supports va_copy, so I forced that in the faulting file.
Code: [Select]

//#ifdef HAVE_VA_COPY
#define VARARGS_ASSIGN(foo, bar)        va_copy(foo,bar)
//#elif defined(HAVE_VA_LIST_AS_ARRAY)
//#define VARARGS_ASSIGN(foo, bar)        foo[0] = bar[0]
//#else
//#define VARARGS_ASSIGN(foo, bar)        (foo) = (bar)
//#endif


There is no make install, so I did the stuff below to make it work:
Code: [Select]

mkdir /usr/local/include/js
cp js/src/*.{h,tbl} /usr/local/include/js
cp js/src/Darwin_OPT.OBJ/*.h /usr/local/include/js
cp js/src/Darwin_OPT.OBJ/libjs.* /usr/local/lib


Then Sphere built a bit more for me: it now gives me an error on Audiere :(

In this part I tried to get the most up to date SpiderMonkey to run. I achieved that (try the js command) but sadly, Sphere is so outdated that its API is nearly not convertable: at least not in a couple of hours. Instead, I build and installed-by-hand the ancient SpiderMonkey.
In part 4, I will be fixing more errors and I will probably meet the missing Corona and LibMNG.
  • Last Edit: April 24, 2014, 12:02:30 pm by Rahkiin

  • Rahkiin
  • [*][*][*]
Re: Sphere 1.5, 1.6 beta
Reply #71
This is part 4 of my quest to building Vanilla Sphere for Mac!

In part 3 I tried to use the latest version of SpiderMonkey, which utterly failed because Sphere is extremely outdated. Instead I installed the ancient 1.8 version and it seems to pass that part.

Lets fix more errors!

The Audiere error was a mistake on my side: I forgot to include platform.h in audio.h.

I saw 4 warnings in script.cpp I could easily fix. One of the errors needs to be highlighted:

Code: [Select]

source/engine/script.cpp:5113:10: warning: result of comparison against a string literal is unspecified (use strncmp instead) [-Wstring-compare]
if (name == "")
         ^  ~~

Don't do this! I replaced it with:
Code: [Select]

if (name == NULL || strnlen(name,1) == 0 )


Next up: can't find libmng.h! :) So we can almost conclude that we are done with Audiere and JS.

Brew does not have libmng. http://sourceforge.net/projects/libmng/files/libmng-devel/ has two version: 1.x and 2.x. 2.x seems new: 2013. So we will go with the ancient version (like we did before).

Code: [Select]

cd libmng
./unmaintained/autogen.sh
./configure
make


BOOM! Error. jpeglib.h not found! Ofcourse, it should not Just Work (tm).
Try brew install jpeg, or use this: http://ethan.tira-thompson.com/Mac_OS_X_Ports.html

Code: [Select]

./configure --with-jpeg=/usr/local
make


Still does not work. I added /usr/local/include to DEFAULT_INCLUDES in the Makefile. And now it builds!
Code: [Select]

make
make install


Lets try SCons again. It works! And now we need to build Corona, which is the next complaint.
Get it from http://prdownloads.sourceforge.net/corona/corona-1.0.2.tar.gz?download

Code: [Select]

open corona-1.0.2.tar.gz
<wait>
cd corona-1.0.2
./configure
make

Oh it went so well... png.h not found.

Configure tells me that both png and jpeg cant be found and they therefor won't be supported. That is funny because it means MNG is an empty container :)
After some try-and-error:
Code: [Select]

CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib CPPFLAGS=-I/usr/local/include CXXFLAGS=-I/usr/local/include ./configure


Code: [Select]

OpenPNG.cpp:42:27: error: member access into incomplete type 'png_struct' (aka 'png_struct_def')
    memcpy(jmpbuf, png_ptr->jmpbuf, sizeof(jmp_buf));

Corona is outdated. The struct was removed in 1.5. I do have libs of 1.4 so I switch all the symlinks to libpng15 to libpng14.

Next up: errors when linking: duplicate symbols in libungif!

Derp i accidentally refreshed...
I don't want to rewrite all of it, so a quick rundown:
Fixed the duplicate symbols by removing the linking of libungif in one part (it got linked twice. Then libmng builds.

I had to fix a lot of Sphere by hand in code and the build system. These changes will all be up on the GitHub.

Most 'cant find lib' problems are because they don't look in /usr/local/, which is where all my brew stuff is placed, and almost everything else too.

11:36PM: I have: 'scons: done building targets.'! That is, using the mac video driver and the unix platform code. Lets try to run it.
I think it will fault.

Code: [Select]

Assertion failed: (sizeof(LAYER_HEADER) == 30), function LAYER_HEADER_AssertStructSize__, file source/common/Map.cpp, line 141.

Note to other developers: these assertions can be done at compile time using _Static_assert, if available.

For OSX, it now uses -std=c++11, so I can have static asserts. I then changed ASSERT_STRUCT_SIZE to use static assert when that is available. I also replaced size-sensitive typedefs in types.h to stdint.h types so it always works on 64 bit systems.

I also fixed more warnings and errors that came with the more strict c++11 :)

Lets run it again...
Code: [Select]

dlopen(/Users/jos/Development/SphereVanilla/sphere/sphere/build/mac/system/video/sdl32.so, 1): image not found


That is easy to solve: OSX has dynamic library extensions dyld, and I named them like that, and those files actually exist. So the dlopen call is using the wrong extension.
It is a value in the engine.ini.

And it crashes again:

Code: [Select]

dyld: lazy symbol binding failed: Symbol not found: _DGifOpen
  Referenced from: /usr/local/lib/libcorona-1.0.2.dylib
  Expected in: flat namespace


Honestly, I have no clue anymore. It is now 12:36AM. Committing code and pushing and then it is fine for today.

What I am doing though, is getting engine/mac to work by fixing its code. There's hoping.

This was part 4 of my quest to Building Vanilla Sphere for Mac. In this part I got quite some results: it actually builds. I fixed a lot of warnings and errors and made the build system much nicer, and made it work for OSX. Corona was and is a pain. I don't remember what more I did there, it got lost in a refresh.

The next part, part 5 already, of my quest will put some conclusion to it. I hope to reach my final destination (tm): a working engine. After that, I might go do a part 6, by starting on using Xcode projects and frameworks instead, so that a Sphere.app can be delivered.
However, I am not putting too much time in that as I am making my own engine, Andromeda, which is a completely other quest :)

The commits: https://github.com/sphere-group/sphere/commit/fb598fc58abb8374c856852681abfd2b686dcb45 https://github.com/sphere-group/sphere/commit/5d45b4e4572b46723661f91a7fca65d0b2145eab
  • Last Edit: April 24, 2014, 07:42:40 pm by Rahkiin

Re: Sphere 1.5, 1.6 beta
Reply #72
I really recommend using Spidermonkey 1.5. That's what I've been using, and it looks like there will be huge headaches with using anything else.

The issue with libpng and Corona was fixed in my version of Corona, although if you know C or C++ it's an easy fix anyway.

The examples in Audiere are known to just be completely broken.
  • Last Edit: April 24, 2014, 03:59:32 pm by Flying Jester

  • Rahkiin
  • [*][*][*]
Re: Sphere 1.5, 1.6 beta
Reply #73
Yes well, I got it compiling with 1.8 :) I have no idea how it runs. I am still fixing code of Sphere itself: using Mac video but Unix system.
Also a lot of flags and stuff are different and, it is just generally different.

I accidentally refreshed so I lost quite a lot of my text (everything between fixing corona and fixing a lot of Sphere). :(

  • Last Edit: April 24, 2014, 06:28:54 pm by Rahkiin

Re: Sphere 1.5, 1.6 beta
Reply #74
Most of the stuff that you are changing is in the Linux code, right?

Ideally, I would hope these changes would only/mostly affect the OS X build. The build is working quite well for Win32 and fairly well for Linux already.