[Solved]Error in ~OgreOggSoundManager() while running make


06-08-2010 09:06:37


I am getting the following error while installing OgreOggSound- version 1.17

/OggSound/src/ogreoggsoundmanager.cpp: In destructor ‘OgreOggSound::OgreOggSoundManager::~OgreOggSoundManager()’:
/OggSound/src/ogreoggsoundmanager.cpp:134: error: ‘mUpdateThread’ was not declared in this scope
/OggSound/src/ogreoggsoundmanager.cpp:140: error: ‘mUpdater’ was not declared in this scope
make[2]: *** [CMakeFiles/OgreOggSound.dir/src/ogreoggsoundmanager.cpp.o] Error 1
make[1]: *** [CMakeFiles/OgreOggSound.dir/all] Error 2
make: *** [all] Error 2

Following is cmake log

-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- checking for module 'OGRE'
-- found OGRE, version 1.7.0
-- checking for module 'openal'
-- found openal, version 1.8.466
-- checking for module 'ogg'
-- found ogg, version 1.1.4
-- checking for module 'vorbisfile'
-- found vorbisfile, version 1.2.0
-- Configuring done
-- Generating done

Boost Libraries version is 1.43
Operating system is Ubuntu 9.10

Please help me to get rid of that error. Thanks in advance.



07-08-2010 20:59:20

Hi there,

That looks like its compiling against POCO instead of BOOST, I guess that define needs adding to the linux make file :oops:


07-08-2010 21:10:38

I've made a blind attempt at adding an option to the makefile, if you could try it out and see if it sorts out the issue that would be great, but to be honest I don't have any real experience with linux and no access to a development box so it may have broken the file, if you can amend it to get it working and report back the changes I'll correct it.

I added an option USE_BOOST which when set hopefully sets a define which compiles against BOOST and when unset sets a define which compiles against POCO, if I'm honest I just copied and pasted a similar option somebody else added in a previous ammendment, no idea if it works :oops:

I don't really know my way around CMake/Linux yet and these files have been kindly donated by user contributions, hopefully they can pick up on this and suggest the corrections required.



09-08-2010 07:47:11


Thank you for your replies. I'll try to build against Boost and let you know the changes.



09-08-2010 12:09:54


I added these lines after " #include<string> " in OgreOggSoundManger.h file to make it compile without any error. I put that code in line # 40.

#define BOOST_THREAD 1

If thre is a better way, please advise.



09-08-2010 19:55:08

Yeah unfortunately that forces everyone to use BOOST so is not an option, what I added was an option in the CMake file to select which Thread library to build against, somehow you should be able to set this prior to compiling and it should do the same thing. On windows you can use cmake-gui and change a checkbox before building, not entirely sure the preferred method on linux for doing the same thing, sorry. :?