[odb-users] ODB segfaults in Qt profile
Scott Deerwester
scott.deerwester at gmail.com
Fri Dec 6 10:37:22 EST 2013
I am receiving the following error:
odb --database mysql --profile qt --generate-schema --generate-query
--generate-session -I/opt/Qt/5.1.1/gcc_64/include
-I/opt/Qt/5.1.1/gcc_64/include/QtCore ../ODBExample/ChildClass.h
*** WARNING *** there are active plugins, do not report this as a bug
unless you can reproduce it without enabling any plugins.
Event | Plugins
PLUGIN_START_UNIT | odb
PLUGIN_PRAGMAS | odb
PLUGIN_OVERRIDE_GATE | odb
In file included from <standard-odb-epilogue>:8:0:
/usr/local/include/odb/tr1/pointer-traits.hxx: In member function ‘virtual
const char* __gnu_cxx::__concurrence_lock_error::what() const’:
/usr/local/include/odb/tr1/pointer-traits.hxx:116:1: internal compiler
error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
make: *** [ChildClass-odb.cxx] Error 1
Here is file ChildClass.h:
#ifndef CHILDCLASS_H
#define CHILDCLASS_H
#include <QString>
#include <QSharedPointer>
#include <odb/core.hxx>
class ParentClass;
#pragma db object
class ChildClass
{
public:
ChildClass();
const QString getID() const;
void setID(QString &aID);
private:
friend class odb::access;
#pragma db id
QString id_;
QSharedPointer<const ParentClass> parent_;
};
#endif // CHILDCLASS_H
and here is file ParentClass.h:
#ifndef PARENTCLASS_H
#define PARENTCLASS_H
#include <QString>
#include <QMap>
#include <QSharedPointer>
#include <odb/core.hxx>
#include "ChildClass.h"
#pragma db object
class ParentClass
{
public:
ParentClass();
ParentClass(QString aID);
const QString getID() const;
void setID(QString &aID);
private:
friend class odb::access;
#pragma db id
QString id_;
bool bool_;
int int_;
#pragma db not_null inverse(parent_)
QMap<QString,QSharedPointer<const ChildClass> > children_;
};
#endif // PARENTCLASS_H
I am running Qt 5.1.1, odb 2.3.0 and gcc 4.6.3 on Ubuntu 12.04. Any ideas?
More information about the odb-users
mailing list