It seems that mongodb in version 3.0 always includes the gperf header (coming from the cpu_profile_command), even through the command is only available when mongodb is explicitly built with the profiler.
scons: Building targets ... Generating build/linux2/normal/buildinfo.cpp g++ -o build/linux2/normal/third_party/gperftools-2.2/src/base/spinlock_internal.o -c -Wnon-virtual-dtor -Woverloaded-virtual -std=c++11 -fPIC -fno-strict-aliasing -ggdb -pthread -Wno-unknown-pragmas -Winvalid-pch -pipe -O3 -Wno-unused-local-typedefs -Wno-unused-function -Wno-deprecated-declarations -Wno-unused-but-set-variable -Wno-missing-braces -fno-builtin-memcmp -DBOOST_ALL_NO_LIB -D_SCONS -DMONGO_EXPOSE_MACROS -DSUPPORT_UTF8 -DMONGO_OPTIMIZED_BUILD -DMONGO_BYTE_ORDER=1234 -D_FILE_OFFSET_BITS=64 -DMONGO_HAVE___THREAD -DMONGO_HAVE_CXX11_ATOMICS -DMONGO_HAVE_HEADER_UNISTD_H -DMONGO_HAVE_POSIX_MONOTONIC_CLOCK -DMONGO_HAVE_EXECINFO_BACKTRACE -DMALLOC_HOOK_MAYBE_VOLATILE=volatile -DNO_TCMALLOC_SAMPLES -DNO_HEAP_CHECK -DNDEBUG -Ibuild/linux2/normal/third_party/gperftools-2.2/src -Isrc/third_party/gperftools-2.2/src -Isrc/third_party/gperftools-2.2 -Ibuild/linux2/normal -Isrc src/third_party/gperftools-2.2/src/base/spinlock_internal.cc In file included from src/third_party/gperftools-2.2/src/base/spinlock_internal.cc:52:0: src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h: In constructor '{anonymous}::InitModule::InitModule()': src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h:59:49: error: 'sys_futex' was not declared in this scope sys_futex(&x, FUTEX_WAKE, 1, 0) >= 0); ^ src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h: In function 'void base::internal::SpinLockDelay(volatile Atomic32*, int32, int)': src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h:88:71: error: 'sys_futex' was not declared in this scope value, reinterpret_cast<struct kernel_timespec *>(&tm)); ^ src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h: In function 'void base::internal::SpinLockWake(volatile Atomic32*, bool)': src/third_party/gperftools-2.2/src/base/spinlock_linux-inl.h:99:67: error: 'sys_futex' was not declared in this scope FUTEX_WAKE | futex_private_flag, all? INT_MAX : 1, 0); ^ scons: *** [build/linux2/normal/third_party/gperftools-2.2/src/base/spinlock_internal.o] Error 1 scons: building terminated because of errors.
- is duplicated by
-
SERVER-18626 MongoDB version 3.0 build from source fails due to gperftools 2.2 on PPC64
- Closed