mongofill / mongofill-hhvm

A mix of the original Mongofill extension + BSON implementation in C++
MIT License
32 stars 19 forks source link

Can't compile on Debian with HHVM 3.4.2~wheezy #22

Closed JulienPalard closed 9 years ago

JulienPalard commented 9 years ago
$ ./build.sh 
Submodule 'vendor/mongofill/mongofill' () registered for path 'vendor/mongofill/mongofill'
** hphpize complete, now run `cmake . && make` to build
-- Configuring for HHVM API version 20140829
-- bson Include dir: /usr/local/include/libbson-1.0
-- libbson library: /usr/local/lib/libbson-1.0.so
-- Configuring done
-- Generating done
-- Build files have been written to: /usr/src/mongofill-hhvm
Scanning dependencies of target mongo
[ 33%] Building CXX object CMakeFiles/mongo.dir/src/bson.cpp.o
In file included from /usr/include/hphp/runtime/base/memory-manager.h:27:0,
                 from /usr/include/hphp/runtime/base/types.h:37,
                 from /usr/include/hphp/runtime/base/zend-functions.h:21,
                 from /usr/include/hphp/runtime/base/hphp-system.h:27,
                 from /usr/include/hphp/runtime/base/base-includes.h:24,
                 from /usr/src/mongofill-hhvm/src/bson.cpp:1:
/usr/include/hphp/util/alloc.h: In function ‘void HPHP::low_free(void*)’:
/usr/include/hphp/util/alloc.h:115:39: error: ‘MALLOCX_ARENA’ was not declared in this scope
   dallocx(ptr, MALLOCX_ARENA(low_arena));
                                       ^
In file included from /usr/include/hphp/third-party/folly/ThreadLocal.h:53:0,
                 from /usr/include/hphp/third-party/folly/ThreadCachedInt.h:31,
                 from /usr/include/hphp/third-party/folly/AtomicHashArray.h:41,
                 from /usr/include/hphp/third-party/folly/AtomicHashMap.h:93,
                 from /usr/include/hphp/runtime/vm/named-entity.h:26,
                 from /usr/include/hphp/runtime/vm/type-constraint.h:20,
                 from /usr/include/hphp/runtime/vm/preclass.h:28,
                 from /usr/include/hphp/runtime/vm/class.h:31,
                 from /usr/include/hphp/runtime/base/object-data.h:26,
                 from /usr/include/hphp/runtime/base/type-object.h:20,
                 from /usr/include/hphp/runtime/base/complex-types.h:26,
                 from /usr/include/hphp/runtime/base/type-conversions.h:22,
                 from /usr/include/hphp/runtime/base/hphp-system.h:29,
                 from /usr/include/hphp/runtime/base/base-includes.h:24,
                 from /usr/src/mongofill-hhvm/src/bson.cpp:1:
/usr/include/hphp/third-party/folly/detail/ThreadLocalDetail.h: In static member function ‘static void folly::threadlocal_detail::StaticMeta<Tag>::reserve(int)’:
/usr/include/hphp/third-party/folly/detail/ThreadLocalDetail.h:354:67: error: ‘MALLOCX_ZERO’ was not declared in this scope
         success = (xallocx(threadEntry->elements, newByteSize, 0, MALLOCX_ZERO)
                                                                   ^
/usr/include/hphp/third-party/folly/detail/ThreadLocalDetail.h:361:42: error: ‘MALLOCX_ZERO’ was not declared in this scope
                     mallocx(newByteSize, MALLOCX_ZERO))) != nullptr);
                                          ^
make[2]: *** [CMakeFiles/mongo.dir/src/bson.cpp.o] Error 1
make[1]: *** [CMakeFiles/mongo.dir/all] Error 2
make: *** [all] Error 2
JulienPalard commented 9 years ago

Upgrading jemalloc from 3.3 to 3.6 fixed it.