[odb-users] Building odb-tests-2.2.0 on Mac with gcc-4.8.0:
make errors
Boris Kolpackov
boris at codesynthesis.com
Fri May 10 11:16:04 EDT 2013
Hi,
skh <skh1002 at gmail.com> writes:
> If I specify CXXFLAGS=-std=c++0x, then make bombs out with this message:
>
> Undefined symbols for architecture x86_64:
> "odb::vector_base::vector_base(odb::vector_base&&)²,
> referenced from: odb::vector<item, std::allocator<item>
> >::vector(odb::vector<item, std::allocator<item> >&&)
> in driver.o
This is actually a bug in libodb. A workaround would be to build libodb
in the C++11 mode as well.
> I don't specify CXXFLAGS, the error message is different:
> Making all in access
> make all-am
>
> test-odb.cxx:2463:13: error: `move' is not a member of `std' o.p2 (std::move
> (v));
I am pretty sure you didn't run make clean before re-building in the C++98
mode and test-odb.cxx is the old file generated for C++11.
> In this case, CXXFLAGS=-std=c++0x option produces the same error message as
> before, but if I omit it, the following is generated:
>
> make all-am
> In file included from
> ../../../odb-tests-2.2.0/common/definition/driver.cxx:19:0:
> ./test-odb.hxx:109:7:
> error: 'image_type' in 'class odb::access::composite_value_traits<timeval,
> (odb::database_id)1u>'
> does not name a type
> composite_value_traits< ::timeval, id_sqlite >::image_type time_value;
I am not sure about this one though it can also be an artifact of dirty
rebuild. Can you try these steps using clean source/build directories?
Boris
More information about the odb-users
mailing list