SFML community forums

Help => General => Topic started by: christoph on June 16, 2008, 05:45:12 pm

Title: Does not build on IA 64 / GNU/Linux + Other Platforms questi
Post by: christoph on June 16, 2008, 05:45:12 pm
Hi  Although it is officially supported SFML fails to build on IA 64 / GNU/linux:

Code: [Select]
/usr/bin/make sfml
make[1]: Entering directory `/build/buildd/libsfml-1.2'
[ -d lib ] || mkdir lib
make[2]: Entering directory `/build/buildd/libsfml-1.2/src/SFML'
make[3]: Entering directory `/build/buildd/libsfml-1.2/src/SFML/System'
g++ -o Clock.o -c Clock.cpp -W -Wall -pedantic -fPIC -I../../../include -I../../ -DNDEBUG -O2
In file included from ../../../include/SFML/System/Clock.hpp:31,
                 from Clock.cpp:28:
../../../include/SFML/Config.hpp:86:6: error: #error This platform is not supported by SFML library
make[3]: *** [Clock.o] Error 1
make[3]: Leaving directory `/build/buildd/libsfml-1.2/src/SFML/System'
make[2]: *** [sfml-system] Error 2
make[2]: Leaving directory `/build/buildd/libsfml-1.2/src/SFML'
make[1]: *** [sfml] Error 2
make[1]: Leaving directory `/build/buildd/libsfml-1.2'
make: *** [build-stamp] Error 2


Is there a special reason you do not support other platforms than x86(_64) IA 64 and PPC?

What is the BIG_ENDIAN define used for as I have seen you use htonl family of functions?
Title: Does not build on IA 64 / GNU/Linux + Other Platforms questi
Post by: Laurent on June 17, 2008, 03:14:41 am
IA 64 is supported, and detected with the symbols __IA64__ or _M_IA64 (found on http://predefs.sourcefoge.net). If your compiler defines another symbol I'll be glad to add it and fix this bug.

The BIG_ENDIAN symbol is currently not used, but it might be the case in the future.
Title: Does not build on IA 64 / GNU/Linux + Other Platforms questi
Post by: christoph on June 17, 2008, 08:58:04 am
The Compiler is an gnu g++ Version 4.3 so nothing exotic. So either debian patched some stuff away or predef.sf.net is wrong.

The reason I ask for your reasoning to supoort only certain platforms is that I have to decide wether to build only on some platforms for  Debian or to «extend» this range of Systems. Here I would like to avoid limiting the availability for no real reason.
Title: Does not build on IA 64 / GNU/Linux + Other Platforms questi
Post by: Laurent on June 17, 2008, 10:03:02 am
Quote
The reason I ask for your reasoning to supoort only certain platforms

I'm not actually doing so, I try to support as many platforms as I can. What's the reason why you're saying I'm limiting to only certain platforms ?
Title: Does not build on IA 64 / GNU/Linux + Other Platforms questi
Post by: christoph on June 17, 2008, 04:03:54 pm
You are very good in platforms you directly support but you prefer to manually fail on unknown platforms for no (to me) aparent reason.  There are quite some alternative platforms where SFML certainly would work just fine but refuses to compile.

Platforms we would build for (http://buildd.debian.org/~jeroen/status/package.php?p=libsfml)

I'm trying to understand if you don't support them because you have no access to those or because they would require some additional work here. I don't want to criticise you or SFML here (the codebase is quite clean so one can really understand the workings and I am quite sure there are no dirty platform specific hacks in there) I am trying to figure out where the problems for those Platforms are (if any) and if it would be possible for me to support them in the debian packages.
Title: Does not build on IA 64 / GNU/Linux + Other Platforms questi
Post by: Laurent on June 17, 2008, 05:06:00 pm
Well, I think I just did the same as for operating systems, but you're right many unknown platforms won't need additional code to work.

I'll remove the error, and maybe even all the platform and endian stuff as I don't need it so far.

Thanks for the feedback.
Title: Does not build on IA 64 / GNU/Linux + Other Platforms questi
Post by: christoph on June 17, 2008, 06:48:41 pm
Great. So we'll have SFML built on more Platforms :)

Is there some planing as to when 1.3 will be ready?
Title: Does not build on IA 64 / GNU/Linux + Other Platforms questi
Post by: Laurent on June 18, 2008, 03:08:17 am
The 1.3 C and C++ archives are already done, I'm just waiting for the Python and D bindings.