Created attachment 370744 [details] build.log.gz i686-pc-linux-gnu-g++ -o build/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-sys tem-snappy/use-system-tcmalloc/usev8/mongo/scripting/engine.o -c -O2 -march=i686 -pipe -fPIC -fno-strict-aliasing -pthread -Wall -Wsi gn-compare -Wno-unknown-pragmas -Winvalid-pch -fno-builtin-memcmp -O3 -D_SCONS -DMONGO_EXPOSE_MACROS -DSUPPORT_UTF8 -D_FILE_OFFSET_BI TS=64 -DMONGO_SSL -DMONGO_HAVE_HEADER_UNISTD_H -DMONGO_HAVE_EXECINFO_BACKTRACE -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-li nux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/third_party/libstemmer_c/include -Isrc/t hird_party/libstemmer_c/include -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcr e/use-system-snappy/use-system-tcmalloc/usev8/third_party/s2 -Isrc/third_party/s2 -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc -linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8 -Isrc -Ibuild/linux2/cc_i686-pc-linux -gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/mongo -Isrc/mongo -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system- tcmalloc/usev8/third_party/s2 -Isrc/third_party/s2 -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-b oost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/third_party/v8/include -Isrc/third_party/v8/include src/mongo/script ing/engine.cpp src/mongo/client/sasl_client_session.cpp: In function 'mongo::Status mongo::{anonymous}::_mongoInitializerFunction_CyrusSaslAllocator sAndMutexes(mongo::InitializerContext*)': src/mongo/client/sasl_client_session.cpp:77:28: error: invalid conversion from 'void* (*)(long unsigned int)' to 'void* (*)(size_t) { aka void* (*)(unsigned int)}' [-fpermissive] In file included from src/mongo/client/sasl_client_session.h:17:0, from src/mongo/client/sasl_client_session.cpp:16: /usr/include/sasl/sasl.h:236:18: error: initializing argument 1 of 'void sasl_set_alloc(void* (*)(size_t), void* (*)(size_t, size_t), void* (*)(void*, size_t), void (*)(void*))' [-fpermissive] src/mongo/client/sasl_client_session.cpp:77:28: error: invalid conversion from 'void* (*)(long unsigned int, long unsigned int)' to 'void* (*)(size_t, size_t) {aka void* (*)(unsigned int, unsigned int)}' [-fpermissive] In file included from src/mongo/client/sasl_client_session.h:17:0, from src/mongo/client/sasl_client_session.cpp:16: /usr/include/sasl/sasl.h:236:18: error: initializing argument 2 of 'void sasl_set_alloc(void* (*)(size_t), void* (*)(size_t, size_t), void* (*)(void*, size_t), void (*)(void*))' [-fpermissive] src/mongo/client/sasl_client_session.cpp:77:28: error: invalid conversion from 'void* (*)(void*, long unsigned int)' to 'void* (*)(void*, size_t) {aka void* (*)(void*, unsigned int)}' [-fpermissive] In file included from src/mongo/client/sasl_client_session.h:17:0, from src/mongo/client/sasl_client_session.cpp:16: /usr/include/sasl/sasl.h:236:18: error: initializing argument 3 of 'void sasl_set_alloc(void* (*)(size_t), void* (*)(size_t, size_t), void* (*)(void*, size_t), void (*)(void*))' [-fpermissive] scons: *** [build/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/mongo/client/sasl_client_session.o] Error 1 scons: building terminated because of errors. * ERROR: dev-db/mongodb-2.4.6-r2::gentoo failed (compile phase): * escons failed. * * Call stack: * ebuild.sh, line 93: Called src_compile * environment, line 3077: Called escons '--cc=i686-pc-linux-gnu-gcc' '--cxx=i686-pc-linux-gnu-g++' '--use-system-tcmalloc' '--use-system-pcre' '--use-system-snappy' '--use-system-boost' '--use-sasl-client' '--usev8' '--ssl' 'all' * environment, line 1402: Called die * The specific snippet of code: * [[ ${ret} -ne 0 ]] && has "${EAPI:-0}" 4 5 && die "escons failed.";
Ran into this issue today when installing for the first time (x86). i686-pc-linux-gnu-g++ -o build/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/mongo/client/sasl_client_session.o -c -O2 -march=pentium4 -pipe -fPIC -fno-strict-aliasing -pthread -Wall -Wsign-compare -Wno-unknown-pragmas -Winvalid-pch -fno-builtin-memcmp -O3 -D_SCONS -DMONGO_EXPOSE_MACROS -DSUPPORT_UTF8 -D_FILE_OFFSET_BITS=64 -DMONGO_SSL -DMONGO_HAVE_HEADER_UNISTD_H -DMONGO_HAVE_EXECINFO_BACKTRACE -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/third_party/libstemmer_c/include -Isrc/third_party/libstemmer_c/include -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/third_party/s2 -Isrc/third_party/s2 -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8 -Isrc -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/mongo -Isrc/mongo -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/third_party/s2 -Isrc/third_party/s2 -Ibuild/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/third_party/v8/include -Isrc/third_party/v8/include src/mongo/client/sasl_client_session.cpp src/mongo/client/sasl_client_session.cpp: In function 'mongo::Status mongo::{anonymous}::_mongoInitializerFunction_CyrusSaslAllocatorsAndMutexes(mongo::InitializerContext*)': src/mongo/client/sasl_client_session.cpp:77:28: error: invalid conversion from 'void* (*)(long unsigned int)' to 'void* (*)(size_t) {aka void* (*)(unsigned int)}' [-fpermissive] In file included from src/mongo/client/sasl_client_session.h:17:0, from src/mongo/client/sasl_client_session.cpp:16: /usr/include/sasl/sasl.h:236:18: error: initializing argument 1 of 'void sasl_set_alloc(void* (*)(size_t), void* (*)(size_t, size_t), void* (*)(void*, size_t), void (*)(void*))' [-fpermissive] src/mongo/client/sasl_client_session.cpp:77:28: error: invalid conversion from 'void* (*)(long unsigned int, long unsigned int)' to 'void* (*)(size_t, size_t) {aka void* (*)(unsigned int, unsigned int)}' [-fpermissive] In file included from src/mongo/client/sasl_client_session.h:17:0, from src/mongo/client/sasl_client_session.cpp:16: /usr/include/sasl/sasl.h:236:18: error: initializing argument 2 of 'void sasl_set_alloc(void* (*)(size_t), void* (*)(size_t, size_t), void* (*)(void*, size_t), void (*)(void*))' [-fpermissive] src/mongo/client/sasl_client_session.cpp:77:28: error: invalid conversion from 'void* (*)(void*, long unsigned int)' to 'void* (*)(void*, size_t) {aka void* (*)(void*, unsigned int)}' [-fpermissive] In file included from src/mongo/client/sasl_client_session.h:17:0, from src/mongo/client/sasl_client_session.cpp:16: /usr/include/sasl/sasl.h:236:18: error: initializing argument 3 of 'void sasl_set_alloc(void* (*)(size_t), void* (*)(size_t, size_t), void* (*)(void*, size_t), void (*)(void*))' [-fpermissive] scons: *** [build/linux2/cc_i686-pc-linux-gnu-gcc/cxx_i686-pc-linux-gnu-g++/ssl/use-system-boost/use-system-pcre/use-system-snappy/use-system-tcmalloc/usev8/mongo/client/sasl_client_session.o] Error 1 scons: building terminated because of errors.
Can you guys please check with a newer version of mongodb ? Say 2.4.10. This ebuild is scheduled for removal very soon.
Created attachment 379878 [details] build.log.gz (failing, dev-db/mongodb-2.4.10-r1) dev-db/mongodb-2.4.10-r1 is also failing; please note this is with USE="kerberos"
And dev-db/mongodb-2.6.3 works here. Please note 2.4.6-r2 is latest stable, so I'd recommend stabilizing the working version.
The issue is still reproducible with mongodb-2.4.12.
Created attachment 395812 [details, diff] mongodb-2.4-fix-sasl.patch This patch is based on changes made by MongoDB developers in 2.6. Here is the original commit: https://github.com/mongodb/mongo/commit/9c9b90620c39b2fb461ade6c82716763413bf490
Tried Mike's patch, compiled okay. Thanks mate ! + 23 Feb 2015; Ultrabug <ultrabug@gentoo.org> mongodb-2.4.12.ebuild, + +files/mongodb-2.4-fix-sasl.patch: + fix 2.4.x SASL support thx to Mike Limansky, fix #501744 + For reference, with the upcoming 3.0 I intend to drop all 2.4 mongoDB ebuilds pretty soon. Please re-open if needed.