|
I added a call to breakpoint() in cluster_commands_helpers.cpp, along with #include "mongo/util/debugger.h", and built with scons --gdbserver but got a linker error:
FAILED: build/ninja/mongo/s/libsharding_router_api.so
|
PATH=/opt/mongodbtoolchain/v3/bin:/usr/local/bin:/opt/bin:/bin:/usr/bin CCACHE_NOCPP2=1 ICECC_VERSION=/mirror/co/mongo/build/scons/icecc/opt_mongodbtoolchain_v3_bin_gcc_opt_mongodbtoolchain_v3_bin_g++.tar.gz CCACHE_PREFIX=/usr/bin/icecc /usr/bin/icerun /opt/mongodbtoolchain/v3/bin/g++ @build/nin
|
ja/mongo/s/libsharding_router_api.so.rsp
|
src/mongo/s/cluster_commands_helpers.cpp:249: error: undefined reference to 'mongo::breakpoint()'
|
collect2: error: ld returned 1 exit status
|
acm said the short-term fix is to add "debugger" as a LIBDEP. To avoid this manual step in the future for --gdbserver builds, he suggested either 1) libdebugger should be come a public LIBDEP of libbase, OR 2) we should fold debugger.cpp into libbase.
|