[odb-users] error: redefinition of ‘bool odb::create_schema

Boris Kolpackov boris at codesynthesis.com
Mon Sep 1 02:47:58 EDT 2014


Hi Willem,

WA van Doesburg <wvandoesburg at gmail.com> writes:

> When linking my program I’m getting the error:
> error: redefinition of ‘bool odb::create_schema
> the compiler is citing two different -odb.cxx files both defining this
> function.

create_schema() function is generated by ODB as static which means it
should be local to the translation unit (.cxx file). Can you verify
that they are indeed static? That is, the signature should be:

static bool
create_schema (...)

If they are, then it would appear that your C++ compiler is ignoring
static for some reason. Which C++ compiler/platform are you using?

It could also be something silly, like defining a pre-processor
macro named 'static'.

Boris



More information about the odb-users mailing list