У меня есть класс, использующий буст синглтон. Он вызывает некоторую функцию из собственной библиотеки c ++. Эта библиотека написана в файле make как зависимость.
Теперь у меня есть еще один синглтон-класс, и он должен называться первым синглтон-классом. После этого кода я получил ошибку компоновщика о неопределенных ссылках для функций, которые используются в первом синглтоне.
Когда я удаляю вызов первого одноэлементного класса из второго, ошибки удаляются. Может быть, что-то не так?
class First : public boost::singleton<First>
{
void temp() { /* Calling function from own library */ }
};
class Second : public boost:singleton<Second>
{
const First &someInstance() const { return First::get_const_instance(); }
};
Конечные ошибки:
In function `First::temp()':
undefined reference to `Ogre::WindowEventUtilities::messagePump()'
undefined reference to `Ogre::Root::renderOneFrame()'
Да, функции Ogre вызываются из temp one.