Building OgreAl in Python-Ogre on Linux?

hlad

10-01-2008 15:43:46

Have onyone succeded on building OgreAl module in Python-Ogre on linux?
The "python python-ogre/BuildModule.py -c ogreal" fail with this on log.out:
g++ -o build_dir_2.5/ogreal_0.3/OgreALOggSoundStream.os -c `pkg-config --cflags OGRE` -I -O3 -I./ -fPIC -I/home/hlad/development/root/usr/include/boost-1_34_1 -I/home/hlad/development/root/usr/include/OGRE -IThirdParty/ogreal -I/home/hlad/development/root/usr/include/ogg -I/home/hlad/development/root/usr/include/vorbis -I/home/hlad/development/root/usr/include -I/usr/include/python2.5 -I/home/hlad/development/root/usr/include/boost-1_34_1 generated/ogreal_0.3/OgreALOggSoundStream.cpp
scons: building terminated because of errors.

01-10 16:33 PythonOgre.BuildModule DEBUG generated/ogreal_0.3/OgreALOggSoundStream.cpp: In constructor ‘OgreAL::OggSoundStream::OggSoundStream(const Ogre::String&, const Ogre::String&, bool, OgreAL::AudioFormat)’:
generated/ogreal_0.3/OgreALOggSoundStream.cpp:125: error: ‘checkError’ was not declared in this scope
generated/ogreal_0.3/OgreALOggSoundStream.cpp: In member function ‘virtual bool OgreAL::OggSoundStream::play()’:
generated/ogreal_0.3/OgreALOggSoundStream.cpp:177: error: ‘checkError’ was not declared in this scope
generated/ogreal_0.3/OgreALOggSoundStream.cpp:183: error: ‘checkError’ was not declared in this scope
generated/ogreal_0.3/OgreALOggSoundStream.cpp: In member function ‘virtual bool OgreAL::OggSoundStream::stop()’:
generated/ogreal_0.3/OgreALOggSoundStream.cpp:194: error: ‘checkError’ was not declared in this scope
generated/ogreal_0.3/OgreALOggSoundStream.cpp: In member function ‘virtual bool OgreAL::OggSoundStream::_updateSound()’:
generated/ogreal_0.3/OgreALOggSoundStream.cpp:208: error: ‘_updateSound’ is not a member of ‘OgreAL::Sound’
generated/ogreal_0.3/OgreALOggSoundStream.cpp:215: error: ‘checkError’ was not declared in this scope
generated/ogreal_0.3/OgreALOggSoundStream.cpp: In member function ‘bool OgreAL::OggSoundStream::stream(OgreAL::ALuint)’:
generated/ogreal_0.3/OgreALOggSoundStream.cpp:266: error: ‘checkError’ was not declared in this scope
generated/ogreal_0.3/OgreALOggSoundStream.cpp: In member function ‘virtual Ogre::String OgreAL::OggSoundStream::errorToString(int) const’:
generated/ogreal_0.3/OgreALOggSoundStream.cpp:292: error: ‘errorToString’ is not a member of ‘OgreAL::Sound’
scons: *** [build_dir_2.5/ogreal_0.3/OgreALOggSoundStream.os] Error 1


Any ideas?

Thanks Marek

andy

10-01-2008 23:42:08

I'll have a look over the weekend -- however can you confirm that you built Python-Ogre OK (base and OIS) with the new build system and that it worked OK etc ?

Thanks
Andy

hlad

11-01-2008 08:50:20

Yes, I used the new build system, built ogre, ois and cegui modules and the demos work fine

andy

13-01-2008 09:15:59

Have a go now.. You'll have to update from the SVN and do a retrieve/build/generate/compile :)

cd ~/development/python-ogre
svn up
rm code_generators/cache/ogreal*
rm generated/ogreal_0.3/*
cd ..
python python-ogre/BuildModule.py -r -b ogreal
python python-ogre/BuildModule.py -g -c ogreal

Regards
Andy

hlad

15-01-2008 12:07:34

now during generating source code i get this:

INFO gccxml cmd: /home/hlad/development/gccxml-build/bin/gccxml -I"/home/hlad/development/python-ogre" -I"/home/hlad/development/root/usr/include/boost-1_34_1" -I"/home/hlad/development/root/usr/include/OGRE" -I"/home/hlad/development/python-ogre/ThirdParty/ogreal" -I"/home/hlad/development/root/usr/include/ogg" -I"/home/hlad/development/root/usr/include/vorbis" -I"/home/hlad/development/root/usr/include" -D"OGREAL_NONCLIENT_BUILD" -D"OGRE_NONCLIENT_BUILD" -D"OGREAL_VERSION_0.3" "/home/hlad/development/python-ogre/code_generators/ogreal/python_ogreal.h" -fxml="/home/hlad/development/python-ogre/code_generators/cache/ogreal_0.3_cache.xml"
Traceback (most recent call last):
File "generate_code.py", line 266, in <module>
generate_code()
File "generate_code.py", line 180, in generate_code
, indexing_suite_version=2
File "/home/hlad/development/root/usr/lib/python2.5/site-packages/pyplusplus/module_builder/builder.py", line 90, in __init__
, indexing_suite_version)
File "/home/hlad/development/root/usr/lib/python2.5/site-packages/pyplusplus/module_builder/builder.py", line 144, in __parse_declarations
decls = reader.read_files( files, compilation_mode )
File "/home/hlad/development/root/usr/lib/python2.5/site-packages/pygccxml/parser/project_reader.py", line 225, in read_files
return self.__parse_file_by_file(files)
File "/home/hlad/development/root/usr/lib/python2.5/site-packages/pygccxml/parser/project_reader.py", line 262, in __parse_file_by_file
reader.create_xml_file( header, prj_file.cached_source_file )
File "/home/hlad/development/root/usr/lib/python2.5/site-packages/pygccxml/parser/source_reader.py", line 170, in create_xml_file
raise error
pygccxml.parser.source_reader.gccxml_runtime_error_t: Error occured while running GCC-XML: In file included from /home/hlad/development/python-ogre/ThirdParty/ogreal/OgreALPrereqs.h:49,
from /home/hlad/development/python-ogre/ThirdParty/ogreal/OgreALListener.h:39,
from /home/hlad/development/python-ogre/ThirdParty/ogreal/OgreAL.h:39,
from /home/hlad/development/python-ogre/code_generators/ogreal/python_ogreal.h:6:
/home/hlad/development/root/usr/include/AL/alc.h:190: error: '<anonymous>' has incomplete type
/home/hlad/development/root/usr/include/AL/alc.h:190: error: invalid use of 'OgreAL::ALCvoid'
/home/hlad/development/root/usr/include/AL/alc.h:251: error: '<anonymous>' has incomplete type
/home/hlad/development/root/usr/include/AL/alc.h:251: error: invalid use of 'OgreAL::ALCvoid'


Do you need some additional info?

thanks

Marek

andy

15-01-2008 15:07:59

Sorry my fault with an incomplete SVN update -- environment.py has been updated to fix this issue (it tweaks the alc.h to fix this problem)

S0..., do an svn update, and a BuildModule -b ogreal (to rebuild the support libraries and fix the header files) then a BuildModule -g -c ogreal as per my previous message

Regards

Andy

hlad

15-01-2008 15:50:55

works great, thanks

Marek