OS:
# uname -a Linux QA-DB-009 2.6.18-238.el5 #1 SMP Sun Dec 19 14:22:44 EST 2010 x86_64 x86_64 x86_64 GNU/Linux distro: # cat /etc/redhat-release Red Hat Enterprise Linux Server release 5.6 (Tikanga) ceph: 0.56.3 # gcc -v Using built-in specs. Target: x86_64-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-libgcj-multifile --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --disable-plugin --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-1.4.2.0/jre --with-cpu=generic --host=x86_64-redh
at-linux Thread model: posix gcc version 4.1.2 20080704 (Red Hat 4.1.2-50) I don't know it's ok to install ceph on rhel 5.6. I don't find the rpms for the rhel 5.x. Now only had have some rhel5.6 servers , which I don't want to re-install these. Before install ceph , I installed the libs of requirement , gperftools , libedit , atomic_ops , boost sucessfully. Then configured the ceph without errors. For soving the problem " docdir not defined proboems" , I modified the src/Makefile.am in line 1113 , removed the "?" in head of the "=". Continue to make the ceph, got these errors below. Seemed some fatal code error or include head file problems. Thanks for all your help. ======================================
============================================= # make Making all in . make[1]: Entering directory `/data/software/ceph-0.56.3' make[1]: Nothing to be done for `all-am'. make[1]: Leaving directory `/data/software/ceph-0.56.3' Making all in src make[1]: Entering directory `/data/software/ceph-0.56.3/src' rm -f init-ceph init-ceph.tmp sed -e 's|@bindir[@]|/usr/local/ceph//bin|g' -e 's|@libdir[@]|/usr/local/ceph//lib|g' -e 's|@sysconfdir[@]|/usr/local/ceph//etc|g' -e 's|@datadir[@]|/usr/local/ceph//share/ceph|g' -e 's|@prefix[@]|/usr/local/ceph/|g' -e 's|@@GCOV_PREFIX_STRIP[@][@]|4|g' './init-ceph.in' >init-ceph.tmp chmod +x init-ceph.tmp chmod a-w init-ceph.tmp mv init-ceph.tmp init-ceph make all-recursive make[2]: Entering directory `/data/software/ceph-0.56.3/src' Making all in ocf make[3]:
Entering directory `/data/software/ceph-0.56.3/src/ocf' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/data/software/ceph-0.56.3/src/ocf' Making all in java make[3]: Entering directory `/data/software/ceph-0.56.3/src/java' make all-am make[4]: Entering directory `/data/software/ceph-0.56.3/src/java' make[4]: Nothing to be done for `all-am'. make[4]: Leaving directory `/data/software/ceph-0.56.3/src/java' make[3]: Leaving directory `/data/software/ceph-0.56.3/src/java' Making all in leveldb make[3]: Entering directory `/data/software/ceph-0.56.3/src/leveldb' make all-am make[4]: Entering directory `/data/software/ceph-0.56.3/src/leveldb' if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT
builder.o -MD -MP -MF ".deps/builder.Tpo" -c -o builder.o `test -f './db/builder.cc' || echo './'`./db/builder.cc; \ then mv -f ".deps/builder.Tpo" ".deps/builder.Po"; else rm -f ".deps/builder.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT c.o -MD -MP -MF ".deps/c.Tpo" -c -o c.o `test -f './db/c.cc' || echo './'`./db/c.cc; \ then mv -f ".deps/c.Tpo" ".deps/c.Po"; else rm -f ".deps/c.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT db_impl.o -MD -MP -MF ".deps/db_impl.Tpo" -c -o db_impl.o `test -f './db/db_impl.cc' || echo './'`./db/db_impl.cc; \ then mv -f ".deps/db_i
mpl.Tpo" ".deps/db_impl.Po"; else rm -f ".deps/db_impl.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT db_iter.o -MD -MP -MF ".deps/db_iter.Tpo" -c -o db_iter.o `test -f './db/db_iter.cc' || echo './'`./db/db_iter.cc; \ then mv -f ".deps/db_iter.Tpo" ".deps/db_iter.Po"; else rm -f ".deps/db_iter.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT filename.o -MD -MP -MF ".deps/filename.Tpo" -c -o filename.o `test -f './db/filename.cc' || echo './'`./db/filename.cc; \ then mv -f ".deps/filename.Tpo" ".deps/filename.Po"; else rm -f ".deps/filename.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. &nbs
p; -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT dbformat.o -MD -MP -MF ".deps/dbformat.Tpo" -c -o dbformat.o `test -f './db/dbformat.cc' || echo './'`./db/dbformat.cc; \ then mv -f ".deps/dbformat.Tpo" ".deps/dbformat.Po"; else rm -f ".deps/dbformat.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT log_reader.o -MD -MP -MF ".deps/log_reader.Tpo" -c -o log_reader.o `test -f './db/log_reader.cc' || echo './'`./db/log_reader.cc; \ then mv -f ".deps/log_reader.Tpo" ".deps/log_reader.Po"; else rm -f ".deps/log_reader.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVEL
DB_PLATFORM_POSIX -g -O2 -MT log_writer.o -MD -MP -MF ".deps/log_writer.Tpo" -c -o log_writer.o `test -f './db/log_writer.cc' || echo './'`./db/log_writer.cc; \ then mv -f ".deps/log_writer.Tpo" ".deps/log_writer.Po"; else rm -f ".deps/log_writer.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT memtable.o -MD -MP -MF ".deps/memtable.Tpo" -c -o memtable.o `test -f './db/memtable.cc' || echo './'`./db/memtable.cc; \ then mv -f ".deps/memtable.Tpo" ".deps/memtable.Po"; else rm -f ".deps/memtable.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT repair.o -MD -MP -MF ".deps/repair.Tpo" -c -o repair.o `test -
f './db/repair.cc' || echo './'`./db/repair.cc; \ then mv -f ".deps/repair.Tpo" ".deps/repair.Po"; else rm -f ".deps/repair.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT table_cache.o -MD -MP -MF ".deps/table_cache.Tpo" -c -o table_cache.o `test -f './db/table_cache.cc' || echo './'`./db/table_cache.cc; \ then mv -f ".deps/table_cache.Tpo" ".deps/table_cache.Po"; else rm -f ".deps/table_cache.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT version_edit.o -MD -MP -MF ".deps/version_edit.Tpo" -c -o version_edit.o `test -f './db/version_edit.cc' || echo './'`./db/version_edit.cc; \ &
nbsp; then mv -f ".deps/version_edit.Tpo" ".deps/version_edit.Po"; else rm -f ".deps/version_edit.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT version_set.o -MD -MP -MF ".deps/version_set.Tpo" -c -o version_set.o `test -f './db/version_set.cc' || echo './'`./db/version_set.cc; \ then mv -f ".deps/version_set.Tpo" ".deps/version_set.Po"; else rm -f ".deps/version_set.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT write_batch.o -MD -MP -MF ".deps/write_batch.Tpo" -c -o write_batch.o `test -f './db/write_batch.cc' || echo './'`./db/write_batch.cc; \ then mv -f ".deps/write_batch.Tpo" ".deps/write_b
atch.Po"; else rm -f ".deps/write_batch.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT port_posix.o -MD -MP -MF ".deps/port_posix.Tpo" -c -o port_posix.o `test -f './port/port_posix.cc' || echo './'`./port/port_posix.cc; \ then mv -f ".deps/port_posix.Tpo" ".deps/port_posix.Po"; else rm -f ".deps/port_posix.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT block.o -MD -MP -MF ".deps/block.Tpo" -c -o block.o `test -f './table/block.cc' || echo './'`./table/block.cc; \ then mv -f ".deps/block.Tpo" ".deps/block.Po"; else rm -f ".deps/block.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. &n
bsp;-I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT block_builder.o -MD -MP -MF ".deps/block_builder.Tpo" -c -o block_builder.o `test -f './table/block_builder.cc' || echo './'`./table/block_builder.cc; \ then mv -f ".deps/block_builder.Tpo" ".deps/block_builder.Po"; else rm -f ".deps/block_builder.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT format.o -MD -MP -MF ".deps/format.Tpo" -c -o format.o `test -f './table/format.cc' || echo './'`./table/format.cc; \ then mv -f ".deps/format.Tpo" ".deps/format.Po"; else rm -f ".deps/format.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin
-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT iterator.o -MD -MP -MF ".deps/iterator.Tpo" -c -o iterator.o `test -f './table/iterator.cc' || echo './'`./table/iterator.cc; \ then mv -f ".deps/iterator.Tpo" ".deps/iterator.Po"; else rm -f ".deps/iterator.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT merger.o -MD -MP -MF ".deps/merger.Tpo" -c -o merger.o `test -f './table/merger.cc' || echo './'`./table/merger.cc; \ then mv -f ".deps/merger.Tpo" ".deps/merger.Po"; else rm -f ".deps/merger.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT table.o -MD -MP -MF ".deps/table.Tpo" -c -o table.o `test -f './tab
le/table.cc' || echo './'`./table/table.cc; \ then mv -f ".deps/table.Tpo" ".deps/table.Po"; else rm -f ".deps/table.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT table_builder.o -MD -MP -MF ".deps/table_builder.Tpo" -c -o table_builder.o `test -f './table/table_builder.cc' || echo './'`./table/table_builder.cc; \ then mv -f ".deps/table_builder.Tpo" ".deps/table_builder.Po"; else rm -f ".deps/table_builder.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT two_level_iterator.o -MD -MP -MF ".deps/two_level_iterator.Tpo" -c -o two_level_iterator.o `test -f './table/two_level_iterator.cc' || echo './'`./table
/two_level_iterator.cc; \ then mv -f ".deps/two_level_iterator.Tpo" ".deps/two_level_iterator.Po"; else rm -f ".deps/two_level_iterator.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT arena.o -MD -MP -MF ".deps/arena.Tpo" -c -o arena.o `test -f './util/arena.cc' || echo './'`./util/arena.cc; \ then mv -f ".deps/arena.Tpo" ".deps/arena.Po"; else rm -f ".deps/arena.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT cache.o -MD -MP -MF ".deps/cache.Tpo" -c -o cache.o `test -f './util/cache.cc' || echo './'`./util/cache.cc; \ then mv -f ".deps/cache.Tpo" ".deps/cache.Po"; els
e rm -f ".deps/cache.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT coding.o -MD -MP -MF ".deps/coding.Tpo" -c -o coding.o `test -f './util/coding.cc' || echo './'`./util/coding.cc; \ then mv -f ".deps/coding.Tpo" ".deps/coding.Po"; else rm -f ".deps/coding.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT comparator.o -MD -MP -MF ".deps/comparator.Tpo" -c -o comparator.o `test -f './util/comparator.cc' || echo './'`./util/comparator.cc; \ then mv -f ".deps/comparator.Tpo" ".deps/comparator.Po"; else rm -f ".deps/comparator.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./inclu
de -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT crc32c.o -MD -MP -MF ".deps/crc32c.Tpo" -c -o crc32c.o `test -f './util/crc32c.cc' || echo './'`./util/crc32c.cc; \ then mv -f ".deps/crc32c.Tpo" ".deps/crc32c.Po"; else rm -f ".deps/crc32c.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT env.o -MD -MP -MF ".deps/env.Tpo" -c -o env.o `test -f './util/env.cc' || echo './'`./util/env.cc; \ then mv -f ".deps/env.Tpo" ".deps/env.Po"; else rm -f ".deps/env.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT env_posix.o -MD -MP -MF ".deps/env_posix.Tpo" -
c -o env_posix.o `test -f './util/env_posix.cc' || echo './'`./util/env_posix.cc; \ then mv -f ".deps/env_posix.Tpo" ".deps/env_posix.Po"; else rm -f ".deps/env_posix.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT hash.o -MD -MP -MF ".deps/hash.Tpo" -c -o hash.o `test -f './util/hash.cc' || echo './'`./util/hash.cc; \ then mv -f ".deps/hash.Tpo" ".deps/hash.Po"; else rm -f ".deps/hash.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT histogram.o -MD -MP -MF ".deps/histogram.Tpo" -c -o histogram.o `test -f './util/histogram.cc' || echo './'`./util/histogram.cc; \ then mv
-f ".deps/histogram.Tpo" ".deps/histogram.Po"; else rm -f ".deps/histogram.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT logging.o -MD -MP -MF ".deps/logging.Tpo" -c -o logging.o `test -f './util/logging.cc' || echo './'`./util/logging.cc; \ then mv -f ".deps/logging.Tpo" ".deps/logging.Po"; else rm -f ".deps/logging.Tpo"; exit 1; fi if g++ -DHAVE_CONFIG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT options.o -MD -MP -MF ".deps/options.Tpo" -c -o options.o `test -f './util/options.cc' || echo './'`./util/options.cc; \ then mv -f ".deps/options.Tpo" ".deps/options.Po"; else rm -f ".deps/options.Tpo"; exit 1; fi if g++ -DHAVE_CONF
IG_H -I. -I. -I. -I./include -O2 -DNDEBUG -pthread -fno-builtin-memcmp -DLEVELDB_PLATFORM_POSIX -g -O2 -MT status.o -MD -MP -MF ".deps/status.Tpo" -c -o status.o `test -f './util/status.cc' || echo './'`./util/status.cc; \ then mv -f ".deps/status.Tpo" ".deps/status.Po"; else rm -f ".deps/status.Tpo"; exit 1; fi rm -f libleveldb.a ar cru libleveldb.a builder.o c.o db_impl.o db_iter.o filename.o dbformat.o log_reader.o log_writer.o memtable.o repair.o table_cache.o version_edit.o version_set.o write_batch.o port_posix.o block.o block_builder.o format.o iterator.o merger.o table.o table_builder.o two_level_iterator.o arena.o cache.o coding.o comparator.o crc32c.o env.o env_posix.o hash.o histogram.o logging.o options.o status.o ranlib libleveldb.a make[4]: Leaving directory `/data/software/ceph-0.56.3/src/leveldb' make[3]: Leaving director
y `/data/software/ceph-0.56.3/src/leveldb' make[3]: Entering directory `/data/software/ceph-0.56.3/src' if g++ -DHAVE_CONFIG_H -I. -I. -I. -I/usr/include/nss3 -I/usr/include/nspr4 -Wall -D__CEPH__ -D_FILE_OFFSET_BITS=64 -D_REENTRANT -D_THREAD_SAFE -D__STDC_FORMAT_MACROS -D_GNU_SOURCE -rdynamic -Winit-self -Wpointer-arith -fno-strict-aliasing -DCEPH_LIBDIR=\"/usr/local/ceph//lib\" -Wnon-virtual-dtor -Wno-invalid-offsetof -Wstrict-null-sentinel -g -O2 -MT cls_lock_client.o -MD -MP -MF ".deps/cls_lock_client.Tpo" -c -o cls_lock_client.o `test -f 'cls/lock/cls_lock_client.cc' || echo './'`cls/lock/cls_lock_client.cc; \ then mv -f ".deps/cls_lock_client.Tpo" ".deps/cls_lock_client.Po"; else rm -f ".deps/cls_lock_client.Tpo"; exit 1; fi /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h: In function \u2018int rados::cls::lock::lock(librad
os::IoCtx*, const std::string&, const std::string&, ClsLockType, const std::string&, const std::string&, const std::string&, const utime_t&, uint8_t)\u2019: /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h:83: error: \u2018class __gnu_cxx::lock\u2019 is not a function, cls/lock/cls_lock_client.cc:59: error: conflict with \u2018int rados::cls::lock::lock(librados::IoCtx*, const std::string&, const std::string&, ClsLockType, const std::string&, const std::string&, const std::string&, const utime_t&, uint8_t)\u2019 cls/lock/cls_lock_client.cc:62: error: in call to \u2018lock\u2019 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h: In member function \u2018void rados::cls::lock::Lock::lock_shared(librados::ObjectWriteOperation*)\u2019: /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include
/c++/4.1.2/bits/concurrence.h:83: error: \u2018class __gnu_cxx::lock\u2019 is not a function, cls/lock/cls_lock_client.cc:59: error: conflict with \u2018int rados::cls::lock::lock(librados::IoCtx*, const std::string&, const std::string&, ClsLockType, const std::string&, const std::string&, const std::string&, const utime_t&, uint8_t)\u2019 cls/lock/cls_lock_client.cc:181: error: in call to \u2018lock\u2019 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h: In member function \u2018int rados::cls::lock::Lock::lock_shared(librados::IoCtx*, const std::string&)\u2019: /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h:83: error: \u2018class __gnu_cxx::lock\u2019 is not a function, cls/lock/cls_lock_client.cc:59: error: conflict with \u2018int rados::cls::lock::lock(librados::IoCtx*, const std::string&, c
onst std::string&, ClsLockType, const std::string&, const std::string&, const std::string&, const utime_t&, uint8_t)\u2019 cls/lock/cls_lock_client.cc:187: error: in call to \u2018lock\u2019 /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h: In member function \u2018void rados::cls::lock::Lock::lock_exclusive(librados::ObjectWriteOperation*)\u2019: /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h:83: error: \u2018class __gnu_cxx::lock\u2019 is not a function, cls/lock/cls_lock_client.cc:59: error: conflict with \u2018int rados::cls::lock::lock(librados::IoCtx*, const std::string&, const std::string&, ClsLockType, const std::string&, const std::string&, const std::string&, const utime_t&, uint8_t)\u2019 cls/lock/cls_lock_client.cc:193: error: in call to \u2018lock\u2019 /usr/li
b/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h: In member function \u2018int rados::cls::lock::Lock::lock_exclusive(librados::IoCtx*, const std::string&)\u2019: /usr/lib/gcc/x86_64-redhat-linux/4.1.2/../../../../include/c++/4.1.2/bits/concurrence.h:83: error: \u2018class __gnu_cxx::lock\u2019 is not a function, cls/lock/cls_lock_client.cc:59: error: conflict with \u2018int rados::cls::lock::lock(librados::IoCtx*, const std::string&, const std::string&, ClsLockType, const std::string&, const std::string&, const std::string&, const utime_t&, uint8_t)\u2019 cls/lock/cls_lock_client.cc:199: error: in call to \u2018lock\u2019 make[3]: *** [cls_lock_client.o] Error 1 make[3]: Leaving directory `/data/software/ceph-0.56.3/src' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/data/software/ceph-0.56.3/src' make[1
]: *** [all] Error 2 make[1]: Leaving directory `/data/software/ceph-0.56.3/src' make: *** [all-recursive] Error 1 =================================================================================================== -LiHao |
_______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com