gazebosim / gazebosim/gz-rendering
rendering3-3.5.0 fails to build with ogre/1.10.12
- Dominant language
- C++
- Stars
- 81
- Forks
- 90
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 10
Description
## Environment
* OS Version: Gentoo on CentOS7
* Source build
* using rendering3-3.5.0 and ogre 1.10.12
## Description
I was trying to build ignition-citadel using ogre/1.10.12, since it appears that it has issues with ogre/1.12.12 (https://github.com/osrf/gazebo/issues/2700). However, I hit the following compilation error:
```
22031 /tmp/mboisson/avx2/ignition/citadel/GCC-9.3.0/ign-rendering-ignition-rendering3_3.5.0/ogre/src/OgreMaterialSwitcher.cc: In member function virtual Ogre::Technique* ignition::rendering::v3::OgreMaterialSwitcher::handleSchemeNotFound(uint16_t, const String&, Ogre::Material*, uint16_t, const Ogre::Renderable*):
22032 /tmp/mboisson/avx2/ignition/citadel/GCC-9.3.0/ign-rendering-ignition-rendering3_3.5.0/ogre/src/OgreMaterialSwitcher.cc:86:53: error: no matching function for call to static_pointer_cast(Ogre::ResourcePtr&)
22033 86 | std::static_pointer_cast(res);
22034 |
```
Is there a missing version requirement for ogre for rendering3-3.5.0 ?
The same recipe builds fine against ogre/1.12.12.
Contributor guide
Research direction
Start with ogre/src/OgreMaterialSwitcher.cc, especially the failing static_pointer_cast call at line 86, and compare the Ogre 1.10.12 and 1.12.12 APIs involved. Confirm the fix by rebuilding rendering3-3.5.0 against Ogre 1.10.12; done means the reported compilation error is resolved.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 32/100