[aquaria] [PATCH] Variable type changes and extra include file for compiling in Linux (and probably Mac)

Pontos daemonpontos at gmail.com
Thu Jun 3 14:41:25 EDT 2010


First of all, good to see the game finally being open source :)

Now, I tried compiling the game using the files in the repository as 
provided and got several errors in a bunch of files which interrupted 
the compilation process.
All of them except for one were the incorrect use of the variable type 
"int" in a few lines, generating errors in this style:

/home/user/aquaria/Aquaria/Path.cpp: In member function ‘void 
Path::song(SongType)’:
/home/user/aquaria/Aquaria/Path.cpp:246: error: cast from ‘Path*’ to 
‘int’ loses precision

In total, six files had that kind of problem, and for all of them the 
solution was simply changing "int" for "long".
The other error i found was the lack of inclusion of the header limits.h 
in the file "BBGE/Core.cpp", which generated an error when compiling 
saying that PATH_MAX not being defined.
After adding the line #include <limits.h> this was resolved and the game 
compiled without any other issue.

It's worth noting that I used GCC 4.4.3 on a Linux x86_64 environment, 
which obliged me to use my own libsdl and libopenal libraries given that 
the pre-compiled ones included in the repository were for x86 and 
unusable in my case.
It may be a good idea to add a set of x86_64 libraries as well, with the 
necessary changes in CMakeLists.txt

I attach the diff file generated with the command "hg diff" after 
editing the mentioned files.
That's it for now, will see what else i can do later on :)
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: linux-compile-fix.diff
URL: <http://icculus.org/pipermail/aquaria/attachments/20100603/8ebcacd7/attachment.diff>


More information about the aquaria mailing list