Hi Dave,
OpenVDB 4.x has some API breakage, and only OpenVDB 3.x is supported for
now. Will probably make the switch to OpenVDB 4.x for Blender 2.8 since
it is using C++11 by default, and Blender is not yet built with C++11.
Cheers,
Kévin
Le 2017-06-11 12:08, Dave Plater a écrit :
> Hi, I'm trying to introduce openvdb into the blender build. I've created
> the openvdb package version 4.0.1 (Very memory hungry build) and then am
> attempting to build blender but I get a build failure in
> intern/openvdb/intern/openvdb_writer.cc:
> [ 1002s]
> /home/abuild/rpmbuild/BUILD/blender-2.78c/intern/openvdb/intern/openvdb_writer.cc:
>
> In member function 'void OpenVDBWriter::insert(const
> openvdb::v4_0_1::GridBase&)':
> [ 1002s]
> /home/abuild/rpmbuild/BUILD/blender-2.78c/intern/openvdb/intern/openvdb_writer.cc:48:36:
>
> error: no matching function for call to
> 'std::vector<std::shared_ptr<openvdb::v4_0_1::GridBase>
>>::push_back(openvdb::v4_0_1::GridBase::ConstPtr)'
> [ 1002s] m_grids->push_back(grid.copyGrid());
> [ 1002s] ^
> [ 1002s] In file included from /usr/include/c++/7/vector:64:0,
> [ 1002s] from
> /usr/include/boost/random/detail/polynomial.hpp:18,
> [ 1002s] from
> /usr/include/boost/random/mersenne_twister.hpp:32,
> [ 1002s] from /usr/include/openvdb/math/Math.h:48,
> [ 1002s] from /usr/include/openvdb/Types.h:37,
> [ 1002s] from /usr/include/openvdb/openvdb.h:35,
> [ 1002s] from
> /home/abuild/rpmbuild/BUILD/blender-2.78c/intern/openvdb/intern/openvdb_writer.h:29,
> [ 1002s] from
> /home/abuild/rpmbuild/BUILD/blender-2.78c/intern/openvdb/intern/openvdb_writer.cc:26:
> [ 1002s] /usr/include/c++/7/bits/stl_vector.h:939:7: note: candidate:
> void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp =
> std::shared_ptr<openvdb::v4_0_1::GridBase>; _Alloc =
> std::allocator<std::shared_ptr<openvdb::v4_0_1::GridBase> >;
> std::vector<_Tp, _Alloc>::value_type =
> std::shared_ptr<openvdb::v4_0_1::GridBase>]
> [ 1002s] push_back(const value_type& __x)
> [ 1002s] ^~~~~~~~~
> [ 1002s] /usr/include/c++/7/bits/stl_vector.h:939:7: note: no known
> conversion for argument 1 from 'openvdb::v4_0_1::GridBase::ConstPtr {aka
> std::shared_ptr<const openvdb::v4_0_1::GridBase>}' to 'const value_type&
> {aka const std::shared_ptr<openvdb::v4_0_1::GridBase>&}'
> [ 1002s] /usr/include/c++/7/bits/stl_vector.h:953:7: note: candidate:
> void std::vector<_Tp, _Alloc>::push_back(std::vector<_Tp,
> _Alloc>::value_type&&) [with _Tp =
> std::shared_ptr<openvdb::v4_0_1::GridBase>; _Alloc =
> std::allocator<std::shared_ptr<openvdb::v4_0_1::GridBase> >;
> std::vector<_Tp, _Alloc>::value_type =
> std::shared_ptr<openvdb::v4_0_1::GridBase>]
> [ 1002s] push_back(value_type&& __x)
> [ 1002s] ^~~~~~~~~
> [ 1002s] /usr/include/c++/7/bits/stl_vector.h:953:7: note: no known
> conversion for argument 1 from 'openvdb::v4_0_1::GridBase::ConstPtr {aka
> std::shared_ptr<const openvdb::v4_0_1::GridBase>}' to
> 'std::vector<std::shared_ptr<openvdb::v4_0_1::GridBase> >::value_type&&
> {aka std::shared_ptr<openvdb::v4_0_1::GridBase>&&}'
>
> Full build log at:
> https://build.opensuse.org/build/home:plater:blender/openSUSE_Tumbleweed/x86_64/blender/_log
> This is built with gcc 7 my 42.2 build with gcc48 fails to transfer the
> -std=c++11 flag to the build, log at:
> https://build.opensuse.org/build/home:plater:blender/Leap_42.2/x86_64/blender/_log
> Have a choice for gcc5 and 6 but 42.2 defaults to gcc48.
>
> Will appreciate any help.
> Thanks
> Dave Plater
> _______________________________________________
> Bf-committers mailing list
> [email protected]
> https://lists.blender.org/mailman/listinfo/bf-committers
_______________________________________________
Bf-committers mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-committers