Hi, I'm trying to use the libradosstriper api, but having some trouble in linking to lradosstriper. I copied only the `required' libraries from an pre-installed ceph (10.2.10), and put them under my local directory /rados_install/lib and rados_install/include, on a linux machine.
*/rados_install/lib:* > libboost_date_time.so.1.53.0 libboost_system.so.1.53.0 > libboost_filesystem-mt.so.1.53.0 libboost_thread-mt.so.1.53.0 > libboost_filesystem.so.1.53.0 libcephfs.so.1.0.0 > libboost_iostreams-mt.so.1.53.0 > libboost_iostreams.so.1.53.0 > libboost_random-mt.so.1.53.0 librados.so.2.0.0 > libboost_regex.so.1.53.0 librados_tp.so.2.0.0 > libboost_system-mt.so.1.53.0 libradosstriper.so.1.0.0 > libcephfs.so librados.so libradosstriper.so */rados_install/include: * > |-- rados > | |-- buffer.h -> ../buffer.h > | |-- buffer_fwd.h -> ../buffer_fwd.h > | |-- crc32c.h -> ../crc32c.h > | |-- inline_memory.h -> ../inline_memory.h > | |-- librados.h > | |-- librados.hpp > | |-- librgw.h > | |-- memory.h -> ../memory.h > | |-- objclass.h > | |-- page.h -> ../page.h > | |-- rados_types.h > | |-- rados_types.hpp > | `-- rgw_file.h > `-- radosstriper > |-- libradosstriper.h > `-- libradosstriper.hpp The test code is simple, as attached, and I compiled it with dynamic linking: > cc -L/rados_install/lib -I/rados_install/include -o librados_test > librados_test.c -lrados -lradosstriper But got the following message, can anyone plz advise? > /rados_install/lib/libradosstriper.so: undefined reference to > `ceph::buffer::ptr::ptr(ceph::buffer::ptr&&)' > /rados_install/lib/libradosstriper.so: undefined reference to > `ceph::buffer::ptr::operator=(ceph::buffer::ptr&&)' > /rados_install/lib/libradosstriper.so: undefined reference to > `librados::IoCtx::remove(std::string const&, int)' > /rados_install/lib/libradosstriper.so: undefined reference to > `ceph::buffer::list::iterator::iterator(ceph::buffer::list*, unsigned int)' > /rados_install/lib/libradosstriper.so: undefined reference to > `ceph::buffer::list::is_provided_buffer(char const*) const' > /rados_install/lib/libradosstriper.so: undefined reference to > `ceph::buffer::list::append(ceph::buffer::ptr&&)' > /rados_install/lib/libradosstriper.so: undefined reference to > `ceph::buffer::list::iterator::iterator(ceph::buffer::list*, unsigned int, > std::_List_iterator<ceph::buffer::ptr>, unsigned int)' > /rados_install/lib/libradosstriper.so: undefined reference to > `ceph::buffer::list::list(ceph::buffer::list&&)' Best, Jialin NERSC
librados_test.c
Description: Binary data
_______________________________________________ ceph-users mailing list ceph-users@lists.ceph.com http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com