Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-13195

Build fails if --heapcheck is specified

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: 2.6.0-rc1
    • Component/s: Build
    • ALL

      This happens on 2.7.0-pre, githash c6bef666334edc794e71ef9ddbbe4cca35fb4da9

      [davide@localhost mongo]$ scons mongod mongo --heapcheck --use-system-tcmalloc --dd
      

      Build output:

      [...]
      
      g++ -o build/linux2/dd/use-system-tcmalloc/mongo/db/db.o -c -Wnon-virtual-dtor -Woverloaded-virtual -fPIC -fno-strict-aliasing -ggdb -pthread -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch -Werror -pipe -O0 -fstack-protector -Wno-unused-local-typedefs -Wno-unused-function -Wno-deprecated-declarations -fno-builtin-memcmp -fno-omit-frame-pointer -DBOOST_ALL_NO_LIB -D_SCONS -DMONGO_EXPOSE_MACROS -DSUPPORT_UTF8 -D_FILE_OFFSET_BITS=64 -D_DEBUG -DMONGO_HAVE___THREAD -DMONGO_HAVE_HEADER_UNISTD_H -DMONGO_HAVE_EXECINFO_BACKTRACE -DHEAP_CHECKING -Ibuild/linux2/dd/use-system-tcmalloc/third_party/snappy -Isrc/third_party/snappy -Ibuild/linux2/dd/use-system-tcmalloc/third_party/libstemmer_c/include -Isrc/third_party/libstemmer_c/include -Ibuild/linux2/dd/use-system-tcmalloc/third_party/s2 -Isrc/third_party/s2 -Ibuild/linux2/dd/use-system-tcmalloc/third_party/boost -Isrc/third_party/boost -Ibuild/linux2/dd/use-system-tcmalloc/third_party/pcre-8.30 -Isrc/third_party/pcre-8.30 -Ibuild/linux2/dd/use-system-tcmalloc -Isrc -Ibuild/linux2/dd/use-system-tcmalloc/mongo -Isrc/mongo -Ibuild/linux2/dd/use-system-tcmalloc/third_party/s2 -Isrc/third_party/s2 -Ibuild/linux2/dd/use-system-tcmalloc/third_party/snappy -Isrc/third_party/snappy -Ibuild/linux2/dd/use-system-tcmalloc/third_party/v8/include -Isrc/third_party/v8/include -Ibuild/linux2/dd/use-system-tcmalloc/third_party/yaml-cpp-0.5.1/include -Isrc/third_party/yaml-cpp-0.5.1/include src/mongo/db/db.cpp
      src/mongo/db/db.cpp: In function 'int main(int, char**, char**)':
      src/mongo/db/db.cpp:821:45: error: declaration of C function 'int main(int, char**, char**)' conflicts with
       int main(int argc, char* argv[], char** envp) {
                                                   ^
      In file included from /usr/include/google/heap-checker.h:33:0,
                       from src/mongo/util/heapcheck.h:35,
                       from src/mongo/util/concurrency/mutex.h:29,
                       from src/mongo/bson/optime.h:23,
                       from src/mongo/db/jsobj.h:34,
                       from src/mongo/db/auth/authz_manager_external_state.h:39,
                       from src/mongo/db/auth/authz_manager_external_state_local.h:37,
                       from src/mongo/db/auth/authz_manager_external_state_d.h:37,
                       from src/mongo/db/db.cpp:41:
      /usr/include/gperftools/heap-checker.h:243:14: error: previous declaration 'int main(int, char**)' here
         friend int main(int, char**);
                    ^
      In file included from src/third_party/boost/boost/filesystem/v3/path_traits.hpp:23:0,
                       from src/third_party/boost/boost/filesystem/v3/path.hpp:25,
                       from src/third_party/boost/boost/filesystem/v3/operations.hpp:25,
                       from src/third_party/boost/boost/filesystem/operations.hpp:31,
                       from src/mongo/db/db.cpp:34:
      src/third_party/boost/boost/system/error_code.hpp: At global scope:
      src/third_party/boost/boost/system/error_code.hpp:214:36: error: 'boost::system::posix_category' defined but not used [-Werror=unused-variable]
           static const error_category &  posix_category = generic_category();
                                          ^
      src/third_party/boost/boost/system/error_code.hpp:215:36: error: 'boost::system::errno_ecat' defined but not used [-Werror=unused-variable]
           static const error_category &  errno_ecat     = generic_category();
                                          ^
      src/third_party/boost/boost/system/error_code.hpp:216:36: error: 'boost::system::native_ecat' defined but not used [-Werror=unused-variable]
           static const error_category &  native_ecat    = system_category();
                                          ^
      cc1plus: all warnings being treated as errors
      scons: *** [build/linux2/dd/use-system-tcmalloc/mongo/db/db.o] Error 1
      scons: building terminated because of errors.
      

            Assignee:
            Unassigned Unassigned
            Reporter:
            davide.italiano Davide Italiano
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: