Problem Install OgreOggSound

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
Post Reply
SilverLadon
Gnoblar
Posts: 12
Joined: Sun Aug 24, 2014 5:26 pm

Problem Install OgreOggSound

Post by SilverLadon »

Working in Ubuntu 14:

I downloaded OgreOggSound from it page.

Then, I use CMake-GUI and when I put all the options, I generate the files.

The next step that I do is make -j5, but I get the next error

home/alfa/VG/OgreOggSound-v1.26/src/OgreOggSoundManager.cpp: In member function ‘void OgreOggSound::OgreOggSoundManager::_loadSoundImpl(OgreOggSound::OgreOggISound*, const String&, bool)’:
/home/sergio/VG/OgreOggSound-v1.26/src/OgreOggSoundManager.cpp:2213:38: error: no matching function for call to ‘OgreOggSound::OgreOggISound::_openImpl(Ogre::DataStreamPtr)’
sound->_openImpl(_openStream(file));

Anyone knows what means that error and how can I fix it?
User avatar
spacegaier
OGRE Team Member
OGRE Team Member
Posts: 4304
Joined: Mon Feb 04, 2008 2:02 pm
Location: Germany
x 135
Contact:

Re: Problem Install OgreOggSound

Post by spacegaier »

Sounds like an error within OgreOggSound. Apparently the method

Code: Select all

OgreOggISound::_openImpl(Ogre::DataStreamPtr)
is not declared anywhere. Perhaps this is due to an Ogre version change that resulted in some changed types.

Is there any function named _openImpl() within OgreOggSound at all? If so, what is its signature?
Ogre Admin [Admin, Dev, PR, Finance, Wiki, etc.] | BasicOgreFramework | AdvancedOgreFramework
Don't know what to do in your spare time? Help the Ogre wiki grow! Or squash a bug...
SilverLadon
Gnoblar
Posts: 12
Joined: Sun Aug 24, 2014 5:26 pm

Re: Problem Install OgreOggSound

Post by SilverLadon »

spacegaier wrote:Sounds like an error within OgreOggSound. Apparently the method

Code: Select all

OgreOggISound::_openImpl(Ogre::DataStreamPtr)
is not declared anywhere. Perhaps this is due to an Ogre version change that resulted in some changed types.

Is there any function named _openImpl() within OgreOggSound at all? If so, what is its signature?
In OgreOgISound.h exists this 2 method:

virtual void _openImpl(Ogre::DataStreamPtr& fileStream) = 0;
/** Open implementation.
@remarks
Abstract function
Optional opening function for (Static sounds only)
*/
virtual void _openImpl(const Ogre::String& fName, sharedAudioBuffer* buffer=0) {};
/** Play implementation.
@remarks
Abstract function
*/
alexbouebchmu
Gnoblar
Posts: 2
Joined: Sat Sep 13, 2014 11:37 am

Re: Problem Install OgreOggSound

Post by alexbouebchmu »

Hi,

I post here cause I have a similar error than SilverLadon.
I'm compiling against Ogre 1.9, OgreOggSound 1.26 (revision 442) and Ubuntu 12.04 :

Building CXX object CMakeFiles/OgreOggSound.dir/src/OgreOggSoundManager.cpp.o
/home/CompilAudio/test/src/OgreOggSoundManager.cpp: In member function ‘void OgreOggSound::OgreOggSoundManager::_loadSoundImpl(OgreOggSound::OgreOggISound*, const String&, bool)’:
/home/CompilAudio/test/src/OgreOggSoundManager.cpp:2220:38: error: no matching function for call to ‘OgreOggSound::OgreOggISound::_openImpl(Ogre::DataStreamPtr)’
/home/CompilAudio/test/src/OgreOggSoundManager.cpp:2220:38: note: candidates are:
/home/CompilAudio/test/include/OgreOggISound.h:562:16: note: virtual void OgreOggSound::OgreOggISound::_openImpl(Ogre::DataStreamPtr&)
/home/lCompilAudio/test/include/OgreOggISound.h:562:16: note: no known conversion for argument 1 from ‘Ogre::DataStreamPtr {aka Ogre::SharedPtr<Ogre::DataStream>}’ to ‘Ogre::DataStreamPtr& {aka Ogre::SharedPtr<Ogre::DataStream>&}’
/home/CompilAudio/test/include/OgreOggISound.h:568:16: note: virtual void OgreOggSound::OgreOggISound::_openImpl(const String&, OgreOggSound::sharedAudioBuffer*)
/home/CompilAudio/test/include/OgreOggISound.h:568:16: note: no known conversion for argument 1 from ‘Ogre::DataStreamPtr {aka Ogre::SharedPtr<Ogre::DataStream>}’ to ‘const String& {aka const std::basic_string<char>&}’


For me it's also the call to the method _openImpl() which is not recognized but in my case candidates methods are found.

Is there issues with OgreOggSound's compilation on Ubuntu ? Or am I (are we) doing something wrong ? (I have followed drastically the steps of the Ogre and OgreOggSound compilation given in the Ogre tutorials).

I already have compiled OgreOggSound 1.26 with Ogre 1.9 on Windows and it works perfectly in my project.

Thank you for your time.
Alex.
alexbouebchmu
Gnoblar
Posts: 2
Joined: Sat Sep 13, 2014 11:37 am

Re: Problem Install OgreOggSound

Post by alexbouebchmu »

Hi,

Finally in put my hands in the OgreOggSoundManager and it appears that the error is really ... dumb.
Certainly a limitation of the compilator/compilation flags

To solve the problem I have simply replaced

Code: Select all

sound->_openImpl(_openStream(file));
by

Code: Select all

Ogre::DataStreamPtr streamedFilePtr = _openStream(file);
sound->_openImpl(streamedFilePtr);
and this time it compiles perfectly.

Then now why g++ can't make a reference when we directly give Ogre::DataStreamPtr _openStream() as parameter to _openImpl() is always a mystery to me but it works :).

Hope it helps.
Alex.
Last edited by spacegaier on Sun Oct 05, 2014 11:39 am, edited 1 time in total.
Reason: added code tags
peanutandchestnut
Kobold
Posts: 36
Joined: Tue Nov 11, 2014 9:29 am
x 2

Re: Problem Install OgreOggSound

Post by peanutandchestnut »

Meet the same problem

Code: Select all

Ogre::DataStreamPtr streamedFilePtr = _openStream(file);
sound->_openImpl(streamedFilePtr);
looks like nonsence, but it works. :o :o :o :o :o :o :o :o :o :o
Post Reply