Page 1 of 1
scons errors
Posted: 04 Jan 2008, 06:18
by sombriks
so... i know that i should look all threads before, but...
scons: Reading SConscript files ...
Now configuring. If something fails, consult `config.log' for details.
Detected platform : linux
Checking gcc version... 3.4.6
profiling NOT enabled, debugging NOT enabled, level 2 optimizing enabled
Configuring spring
Checking for zip... Zip 2.31 found
Checking for Freetype2...
Checking for freetype-config... /usr/bin/freetype-config
Checking for Freetype >= 2.0.0... 2.2.1
Checking for SDL...
Checking for sdl-config... /usr/bin/sdl-config
Checking for LibSDL >= 1.2.0... 1.2.11
Checking for OpenAL...
Checking for openal-config... /usr/bin/openal-config
Checking for Ogg headers...
Guessing ogg include path... /usr/include/ogg
Checking for Vorbis(-file) headers...
Guessing vorbisfile include path... /usr/include/vorbis
Checking for Python 2.5...
Guessing Python include path... /usr/include/python2.5
Checking for Python 2.4...
Guessing Python include path... /usr/include/python2.4
Checking for Java... not found
Guessing Java include path... /usr/include/java
Checking headers and libraries
Checking for C++ header file boost/cstdint.hpp... yes
Checking for C++ header file boost/regex.hpp... yes
Checking for C library boost_regex-gcc-mt... no
Checking for C library boost_regex-mt... no
Checking for C library boost_regex-gcc... no
Checking for C library boost_regex... no
Could not find one of these libraries: ['boost_regex-gcc-mt', 'boost_regex-mt', 'boost_regex-gcc', 'boost_regex']
Checking for C++ header file boost/serialization/split_member.hpp... yes
Checking for C++ header file boost/thread.hpp... yes
Checking for C library boost_thread-gcc-mt... no
Checking for C library boost_thread-mt... yes
Checking for C++ header file GL/gl.h... yes
Checking for C library GL... yes
Checking for C++ header file GL/glu.h... yes
Checking for C library GLU... no
Checking for C library glu32... no
Could not find one of these libraries: ['GLU', 'glu32']
Checking for C++ header file GL/glew.h... no
Could not find one of these headers: ['GL/glew.h']
Checking for C++ header file zlib.h... yes
Checking for C library z... yes
Checking for C++ header file ft2build.h... yes
Checking for C library freetype... yes
Checking for C++ header file IL/il.h... no
Could not find one of these headers: ['IL/il.h']
Checking for C++ header file IL/ilu.h... no
Could not find one of these headers: ['IL/ilu.h']
Checking for C++ header file AL/al.h... yes
Checking for C library openal... yes
Checking for C++ header file vorbis/vorbisfile.h... yes
Checking for C library vorbisfile... yes
Checking for C library vorbis... yes
Checking for C++ header file ogg/ogg.h... yes
Checking for C library ogg... yes
Checking for C++ header file SDL/SDL.h... yes
Checking for C library SDL... yes
Checking for C++ header file Python.h... yes
Checking for C library python2.5... no
Checking for C library python25... no
Checking for C library python2.4... yes
Checking for C++ header file jni.h... yes
Not all tests finished succesfully. You are probably missing one of the
build dependencies. See config.log for details.
so, the scons output throws many "no", but does not say to me which ones are critical to the build. shoud i assume everything as critical? is there really a C-only boost?
any light are welcome.
build host: Slackware 11 + Dropline 2.16
Re: scons errors
Posted: 04 Jan 2008, 06:20
by LordMatt
scons configure wrote:Could not find one of these libraries: ['boost_regex-gcc-mt', 'boost_regex-mt', 'boost_regex-gcc', 'boost_regex']
Re: scons errors
Posted: 04 Jan 2008, 11:27
by Tobi
And it always says "missing C library" even though it actually are C++ libraries. And yeah, all things it checks for can be considered required. (though note that only one of the -gcc-mt, -mt, -gcc variants of each boost lib is needed of course

)
Re: scons errors
Posted: 04 Jan 2008, 20:19
by sombriks
hey, thanks for the reply.
i've used a precompiled boost, maybe i need do a tgz by myself.
soon i will prepare packages for Slackware, just wait!
Re: scons errors
Posted: 04 Jan 2008, 23:00
by Tobi
Maybe the precompiled thing has just been split in multiple packages, and you don't have boost-regex yet? (It's like that on ubuntu/debian at least.)
Re: scons errors
Posted: 05 Jan 2008, 06:49
by sombriks
Tobi wrote:Maybe the precompiled thing has just been split in multiple packages, and you don't have boost-regex yet? (It's like that on ubuntu/debian at least.)
unfortunately not,
usually a Slackware package is much bigger, and even official packages doesn't have a "-dev" version. Every package should be complete. Since regex, threading and so on are optional features, i'm recompiling bost --with-libraries all (or something like) to get everything in the right place.
till now, i have devil, glew, and more to come as a ready-to-use tgz.
-- UPDATE --
after 1GB of compiled objects and code (!!! all started with only 12mb, o.0) i get scons saying to me that i do not have boost-regex.... since i've compiled that nasty thing, i would like to ask if someone knows what to to; in my /usr/include/boost-1_34_1, and if anyone (without my same error) could look if it's correct, i will be glad.
btw, scons also says that i don't have glut; the official glut is ugly and "uncompilable", so, i will try freeglut. any advice is more than welcome.
-- UPDATE-2 --
man, i've made a new boost compilation using the libraries serialization, regex an thread; that's 3 of 4 headers needed by boost; later i've take a better look at what exactly means "C library": scons ar looking for the .so file, and when i go to see what the hell was happened, where scons look for 'boost_regex-gcc-mt' we only will find 'boost_regex-gcc-mt-1_34_1';
now i think that i have an ugly error at compile time(well, an human error, since i don't know how to compile it); someone there already compiled boost? i need to remove that stinky version number.
Re: scons errors
Posted: 06 Jan 2008, 10:35
by YokoZar
sombriks wrote:Tobi wrote:Maybe the precompiled thing has just been split in multiple packages, and you don't have boost-regex yet? (It's like that on ubuntu/debian at least.)
unfortunately not,
usually a Slackware package is much bigger, and even official packages doesn't have a "-dev" version. Every package should be complete. Since regex, threading and so on are optional features, i'm recompiling bost --with-libraries all (or something like) to get everything in the right place.
till now, i have devil, glew, and more to come as a ready-to-use tgz.
-- UPDATE --
after 1GB of compiled objects and code (!!! all started with only 12mb, o.0) i get scons saying to me that i do not have boost-regex.... since i've compiled that nasty thing, i would like to ask if someone knows what to to; in my /usr/include/boost-1_34_1, and if anyone (without my same error) could look if it's correct, i will be glad.
btw, scons also says that i don't have glut; the official glut is ugly and "uncompilable", so, i will try freeglut. any advice is more than welcome.
-- UPDATE-2 --
man, i've made a new boost compilation using the libraries serialization, regex an thread; that's 3 of 4 headers needed by boost; later i've take a better look at what exactly means "C library": scons ar looking for the .so file, and when i go to see what the hell was happened, where scons look for 'boost_regex-gcc-mt' we only will find 'boost_regex-gcc-mt-1_34_1';
now i think that i have an ugly error at compile time(well, an human error, since i don't know how to compile it); someone there already compiled boost? i need to remove that stinky version number.
This post is slackware in a nutshell
Re: scons errors
Posted: 06 Jan 2008, 10:37
by imbaczek
Yoko: and your post is how holy wars get started in, you guessed it, a nutshell

Re: scons errors
Posted: 06 Jan 2008, 13:55
by sombriks
imbaczek wrote:Yoko: and your post is how holy wars get started in, you guessed it, a nutshell

hello imbazeck, maybe you you can help this poor packager:
your boost installation was "apt-get'ed" or you compiled it from source? because remove number versions seems to need some trick or obscured parameter to be passed to jam (well, 'till now i've used the simplest "configure" and make, and it's just calls an built-in jam)
i'm sure that it's (fix boost) is enough to get the things working. Later (if it's 100% legal, hehe) we can get a sf.net project to host some distro-specific packages to spring.
playing on windows is getting bogring, since the windows machine have only 512 MB of ram, and half of these is eated by viruses,
ps: sorry about "scons errors"; it's about errors brought to me by scons, :D
Re: scons errors
Posted: 06 Jan 2008, 15:02
by imbaczek
sorry, I'm in the debian/ubuntu crowd, I just apt-get myself away

I compiled boost on windows once, though; it wasn't something I'd willingly do again.
Re: scons errors
Posted: 07 Jan 2008, 06:02
by sombriks
man, i'm sure that i'm gettin old and decrepit. the scons asks me for:
Code: Select all
'boost_regex-gcc-mt', 'boost_regex-mt', 'boost_regex-gcc', 'boost_regex'
and all that i will find using that name is
Code: Select all
libboost_regex-gcc41-d-1_34_1.so.1.34.1 libboost_regex-gcc41-mt-d-1_34_1.a libboost_regex-gcc41-mt.so
libboost_regex-gcc41-1_34_1.a libboost_regex-gcc41-d.a libboost_regex-gcc41-mt-d-1_34_1.so libboost_regex-gcc41.a
libboost_regex-gcc41-1_34_1.so libboost_regex-gcc41-d.so libboost_regex-gcc41-mt-d-1_34_1.so.1.34.1 libboost_regex-gcc41.so
libboost_regex-gcc41-1_34_1.so.1.34.1 libboost_regex-gcc41-mt-1_34_1.a libboost_regex-gcc41-mt-d.a
libboost_regex-gcc41-d-1_34_1.a libboost_regex-gcc41-mt-1_34_1.so libboost_regex-gcc41-mt-d.so
libboost_regex-gcc41-d-1_34_1.so libboost_regex-gcc41-mt-1_34_1.so.1.34.1 libboost_regex-gcc41-mt.a
the problem never was the number version, but how the toolset is named,
for instance, introduce another symlink is enough to get the things working again. Since i still have other 4 tries (i've already failed in 3 of 7 machines, haha) into a completely clean ambient, i will verify if build informing the toolset (--toolset gcc) is enough to get the right library names.
Re: scons errors
Posted: 08 Jan 2008, 06:07
by sombriks
ok, now we are trying to do a "minimun-effort" slackware way.
there are some ready to use packages, so, if we use them and later compile the rest (spring itself and a lobby client), we can produce an usabe initial tgz.
zlib, freetype, sdl and python came "for free" (i.e. no need to post install) with any slack installation. gl and glu was matched on my 12 installation but 11 no; it's because the X11R6 (have a symlink X11 too) directory; i would like to talk about it:
Code: Select all
#include <GL/glu.h>
int main(int* argc, char** argv){
return 0;
}
//gcc -L/usr/X11/lib/libGLU.so coisa.cc -o coisa
since /usr/X11/lib isn't checked by the linker (i have it on my ld.so.conf, so i'm very confused, o.0), i older systems scons will fail even if the shared object is there but inide that directory. for the header files, there is a symlink (from /usr/X11R6/include/GL to /usr/include/GL) that fix the problem (and i'm suer that other distros have too) but the lib directory is a complete different question.
so, right now i'm looking for a way to try this path (/usr/X11/lib) in the conf.CheckLib function. i'm looking for the web right now, and if someone knows how to do that, please consider add it in the oficial .bz2/.zip this small improvement can compile the actual and modern code even againt the old Xorg 6.8 series, and hope it's not much difficult.
== UPDATE ==
your build system is too much to me, ;D i'm still trying to figure how it works.
btw, the best that i've made 'till now was:
Code: Select all
import os, sys
env = Environment(CPPPATH = ".", LIBPATH = ".:/usr/X11R6/lib")
conf = env.Configure()
lib = "GLU"
if not conf.CheckLib(lib):
print "Failed to find/use %s" % lib
sys.exit(1);
where in the build system these things are set up? i havent find yet.
Re: scons errors
Posted: 14 Jan 2008, 09:38
by geno
Will try compile on slack when i get home in a couple of days. The more trying the merrier. Started the other day but ran out of time, had same problem with the boost package.
Why does spring use scons? seems to just add deps and make things slightly more confusing. But that could be because im not that familar with it.
Re: scons errors
Posted: 14 Jan 2008, 11:54
by Tobi
Scons doesn't really add deps. For example, now we depend on scons but not on cmake. If we'd use cmake, we'd depend on cmake and not on scons. Same amount of dependencies
Same story for autotools though that may even be more dependencies because it's usually split in multiple packages.
(That said I'm actually looking into rewriting the buildsys in cmake.)
Re: scons errors
Posted: 14 Jan 2008, 19:38
by imbaczek
All build systems suck

Re: scons errors
Posted: 14 Jan 2008, 19:43
by Tobi
+1
I'm trying to find the one that sucks the least

Re: scons errors
Posted: 14 Jan 2008, 22:46
by YokoZar
Things that clearly tell something is wrong with the current buildsystem in spring:
- You can't see configure option list with scons -h before you successfully configure it, so you have to have all the dependencies to even be able to see if there is some way to disable some of them.
- Hard dependencies on things like java, when many players will never need it, should be optional.
- Streflop is built every time when you do anything with scons, except for configure or install. SConstruct just executes make for that lib every time (streflop has a makefile).
- bitmaps.sdz and springcontent.sdz are updated every time you do something with scons, just like streflop.
- zip is required by the build process, and will fail without it, but scons configure does not test for it. Hence, if you forget to test if build or install failed, you might get a half-installed version of spring.
These can be fixed if you know how to use Scons and write a proper SConstruct file. I don't.
Re: scons errors
Posted: 15 Jan 2008, 00:51
by sombriks
geno wrote:Will try compile on slack when i get home in a couple of days. The more trying the merrier. Started the other day but ran out of time, had same problem with the boost package.
Why does spring use scons? seems to just add deps and make things slightly more confusing. But that could be because im not that familar with it.
hey, for now i've tracked some of the tgz packages needed; it's nice to see that many of them already has in linuxpackages:
boost
http://www.linuxpackages.net/pkg_details.php?id=11834
icu (why some boost libraries aren't present ;D)
http://www.linuxpackages.net/pkg_details.php?id=12034
DevIL
http://www.linuxpackages.net/pkg_details.php?id=10571
openAL
http://www.linuxpackages.net/pkg_details.php?id=11993
glew isn't present yet in that list; i've submitted a package, but i forgot to organize properly the /usr/doc directory, so the package was refused,
to make this package, i've used all my slack habilities and reordered the binary dist in the glew page:
http://glew.sourceforge.net/
the rest of the deps are present in any slackware full installation, :D well,
maybe scons not.
and back to the new thread, changing from scons to cmake will enable the easy installation into, for example, a slalckware 10.2 (pretty old) machine? all libraries depends are there, so, if it becomes possibe, i will start to study cmake and you guys could explain the build process, :D
Re: scons errors
Posted: 17 Jan 2008, 07:38
by geno
thanks for the info sombriks.
Seems to be compiling successfully with the packages mentioned + your glew package
http://www.linuxpackages.net/pkg_details.php?id=12051 .
good work