Re: Unable to build ceph: Ubuntu 15.04 Ceph master

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



What configure command did you use?
can you try adding --with-radosgw?

Orit

On Fri, 2016-03-04 at 09:41 -0500, Shehbaz Jaffer wrote:
> Hi,
> 
> I have cloned ceph from git master branch. I am getting the following
> errors while build:
> 
> ENVIRONMENT
> ----------------------
> 
> $ uname -a
> Linux donjaffer 4.3.0-dev #1 SMP Sun Dec 6 13:56:49 EST 2015 x86_64
> x86_64 x86_64 GNU/Linux
> 
> $ g++ -v
> Using built-in specs.
> COLLECT_GCC=g++
> COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.9/lto-wrapper
> Target: x86_64-linux-gnu
> Configured with: ../src/configure -v --with-pkgversion='Ubuntu
> 4.9.2-10ubuntu13'
> --with-bugurl=file:///usr/share/doc/gcc-4.9/README.Bugs
> --enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr
> --program-suffix=-4.9 --enable-shared --enable-linker-build-id
> --libexecdir=/usr/lib --without-included-gettext
> --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.9
> --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu
> --enable-libstdcxx-debug --enable-libstdcxx-time=yes
> --enable-gnu-unique-object --disable-vtable-verify --enable-plugin
> --with-system-zlib --disable-browser-plugin --enable-java-awt=gtk
> --enable-gtk-cairo
> --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64/jre
> --enable-java-home
> --with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.9-amd64
> --with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.9-amd64
> --with-arch-directory=amd64
> --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --enable-objc-gc
> --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64
> --with-multilib-list=m32,m64,mx32 --enable-multilib
> --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu
> --host=x86_64-linux-gnu --target=x86_64-linux-gnu
> Thread model: posix
> gcc version 4.9.2 (Ubuntu 4.9.2-10ubuntu13)
> 
> BUILD ERROR
> ---------------------
> 
> $make
> ...
>   CXXLD    ceph-dencoder
> rgw/ceph_dencoder-rgw_dencoder.o: In function
> `RGWZoneGroup::generate_test_instances(std::list<RGWZoneGroup*,
> std::allocator<RGWZoneGroup*> >&)':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1095: undefined
> reference to `vtable for RGWZoneGroup'
> rgw/ceph_dencoder-rgw_dencoder.o: In function
> `RGWZoneParams::generate_test_instances(std::list<RGWZoneParams*,
> std::allocator<RGWZoneParams*> >&)':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:870: undefined
> reference to `vtable for RGWZoneParams'
> rgw/ceph_dencoder-rgw_json_enc.o: In function
> `decode_zonegroups(std::map<std::string, RGWZoneGroup,
> std::less<std::string>, std::allocator<std::pair<std::string const,
> RGWZoneGroup> > >&, JSONObj*)':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1095: undefined
> reference to `vtable for RGWZoneGroup'
> rgw/ceph_dencoder-rgw_json_enc.o: In function
> `RGWSystemMetaObj::~RGWSystemMetaObj()':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:763: undefined
> reference to `vtable for RGWSystemMetaObj'
> rgw/ceph_dencoder-rgw_json_enc.o: In function
> `RGWSystemMetaObj::~RGWSystemMetaObj()':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:763: undefined
> reference to `vtable for RGWSystemMetaObj'
> rgw/ceph_dencoder-rgw_json_enc.o: In function `RGWZoneGroup::~RGWZoneGroup()':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1096: undefined
> reference to `vtable for RGWZoneGroup'
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:763: undefined
> reference to `vtable for RGWSystemMetaObj'
> rgw/ceph_dencoder-rgw_json_enc.o: In function `RGWZoneGroup::~RGWZoneGroup()':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1096: undefined
> reference to `vtable for RGWZoneGroup'
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:763: undefined
> reference to `vtable for RGWSystemMetaObj'
> rgw/ceph_dencoder-rgw_json_enc.o: In function
> `std::_Rb_tree<std::string, std::pair<std::string const,
> RGWZoneGroup>, std::_Select1st<std::pair<std::string const,
> RGWZoneGroup> >, std::less<std::string>,
> std::allocator<std::pair<std::string const, RGWZoneGroup> >
> >::_M_erase(std::_Rb_tree_node<std::pair<std::string const,
> RGWZoneGroup> >*)':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1096: undefined
> reference to `vtable for RGWZoneGroup'
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:763: undefined
> reference to `vtable for RGWSystemMetaObj'
> rgw/ceph_dencoder-rgw_json_enc.o: In function
> `std::_Rb_tree_iterator<std::pair<std::string const, RGWZoneGroup> >
> std::_Rb_tree<std::string, std::pair<std::string const, RGWZoneGroup>,
> std::_Select1st<std::pair<std::string const, RGWZoneGroup> >,
> std::less<std::string>, std::allocator<std::pair<std::string const,
> RGWZoneGroup> > >::_M_emplace_hint_unique<std::piecewise_construct_t
> const&, std::tuple<std::string const&>, std::tuple<>
> >(std::_Rb_tree_const_iterator<std::pair<std::string const,
> RGWZoneGroup> >, std::piecewise_construct_t const&,
> std::tuple<std::string const&>&&, std::tuple<>&&)':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1095: undefined
> reference to `vtable for RGWZoneGroup'
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:763: undefined
> reference to `vtable for RGWSystemMetaObj'
> rgw/ceph_dencoder-rgw_json_enc.o: In function `bool
> JSONDecoder::decode_json<RGWZoneGroup>(char const*, RGWZoneGroup&,
> JSONObj*, bool)':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1095: undefined
> reference to `vtable for RGWZoneGroup'
> rgw/ceph_dencoder-rgw_json_enc.o: In function `void
> decode_json_obj<std::string, RGWZoneGroup>(std::map<std::string,
> RGWZoneGroup, std::less<std::string>,
> std::allocator<std::pair<std::string const, RGWZoneGroup> > >&,
> JSONObj*)':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1095: undefined
> reference to `vtable for RGWZoneGroup'
> rgw/ceph_dencoder-rgw_json_enc.o: In function
> `std::_Rb_tree_iterator<std::pair<std::string const, RGWZoneGroup> >
> std::_Rb_tree<std::string, std::pair<std::string const, RGWZoneGroup>,
> std::_Select1st<std::pair<std::string const, RGWZoneGroup> >,
> std::less<std::string>, std::allocator<std::pair<std::string const,
> RGWZoneGroup> > >::_M_insert_<std::pair<std::string const,
> RGWZoneGroup>&>(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*,
> std::pair<std::string const, RGWZoneGroup>&)':
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:733: undefined
> reference to `vtable for RGWSystemMetaObj'
> /home/shehbaz/gsoc/ceph/ceph/src/rgw/rgw_rados.h:1063: undefined
> reference to `vtable for RGWZoneGroup'
> collect2: error: ld returned 1 exit status
> Makefile:15392: recipe for target 'ceph-dencoder' failed
> make[3]: *** [ceph-dencoder] Error 1
> make[3]: Leaving directory '/home/shehbaz/gsoc/ceph/ceph/src'
> Makefile:29913: recipe for target 'all-recursive' failed
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory '/home/shehbaz/gsoc/ceph/ceph/src'
> Makefile:12277: recipe for target 'all' failed
> make[1]: *** [all] Error 2
> make[1]: Leaving directory '/home/shehbaz/gsoc/ceph/ceph/src'
> Makefile:689: recipe for target 'all-recursive' failed
> make: *** [all-recursive] Error 1
> shehbaz@donjaffer:~/gsoc/ceph/ceph$
> 
> 
> INITIAL DIAGNOSTICS
> -------------------------------
> 
> In src/rgw/rgw_rados.h
> 
> struct RGWZoneGroup : public RGWSystemMetaObj
> 
> all pure virtual functions in base class should be overriden in derived class.
> 
> In RGWSystemMetaObj, the following functions are defined pure virtual:
> 
>  virtual const string& get_pool_name(CephContext *cct) = 0;
>   virtual const string get_default_oid(bool old_format = false) = 0;
>   virtual const string& get_names_oid_prefix() = 0;
>   virtual const string& get_info_oid_prefix(bool old_format = false) = 0;
>   virtual const string& get_predefined_name(CephContext *cct) = 0;
> 
> All these functions have been declared and overridden in struct RGWZoneGroup:
> 
>  const string& get_pool_name(CephContext *cct);
>   const string get_default_oid(bool old_region_format = false);
>   const string& get_info_oid_prefix(bool old_region_format = false);
>   const string& get_names_oid_prefix();
>   const string& get_predefined_name(CephContext *cct);
> 
> I also found a similar report here:
> 
> http://ceph.predictor.org.pl/rgw_vtable.txt
> 
> But a solution to the problem is not provided.
> 
> Any help is much appreciated.
> 


--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux