Here are the traces for one of the cores: boost1.54-1.54.0/bin.v2/libs/filesystem/test/operations_test_static.test/gcc-4.8/debug/link-static/operations_test_static Program received signal SIGSEGV, Segmentation fault. __atomic_add_dispatch (__val=1, __mem=0x0) at /build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h:98 98 /build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h: No such file or directory. 1: x/i $pc => 0x3fffb7ee28ec : lwz r10,0(r9) __atomic_add_dispatch (__val=1, __mem=0x0) at /build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h:98 98 /build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h: No such file or directory. (gdb) where #0 __atomic_add_dispatch (__val=1, __mem=0x0) at /build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/ext/atomicity.h:98 #1 _M_add_reference (this=0x0) at /build/buildd/gcc-4.8-4.8.2/build/powerpc64le-linux-gnu/libstdc++-v3/include/bits/locale_classes.h:510 #2 std::locale::locale (this=0x100783d0 , __other=...) at ../../../../../src/libstdc++-v3/src/c++98/locale.cc:80 #3 0x00000000100492a8 in boost::filesystem::path::imbue (loc=...) at ../libs/filesystem/src/path.cpp:918 #4 0x00000000100491b0 in boost::filesystem::path::codecvt () at ../libs/filesystem/src/path.cpp:911 #5 0x000000001004aa3c in boost::filesystem::path::wstring (this=0x3ffffffff5c8) at ../boost/filesystem/path.hpp:386 #6 0x000000001004a540 in boost::filesystem::detail::unique_path (model=..., ec=0x0) at ../libs/filesystem/src/unique_path.cpp:113 #7 0x00000000100238c4 in boost::filesystem::unique_path (p=...) at ../boost/filesystem/operations.hpp:544 #8 0x00000000100200cc in __static_initialization_and_destruction_0 (__initialize_p=1, __priority=65535) at ../libs/filesystem/test/operations_test.cpp:118 #9 0x00000000100201fc in _GLOBAL__sub_I__Z8cpp_mainiPPc () at ../libs/filesystem/test/operations_test.cpp:2034 #10 0x000000001004d444 in __libc_csu_init () #11 0x00003fffb7c8e1ec in generic_start_main (main=0x1003173c , argc=, argv=0x3ffffffffa68, auxvec=0x3ffffffffb10, init=0x1004d3b0 <__libc_csu_init>, rtld_fini=, stack_end=, fini=) at ../csu/libc-start.c:246 #12 0x00003fffb7c8e458 in __libc_start_main (argc=, argv=, ev=, auxvec=, rtld_fini=, stinfo=, stack_on_entry=) at ../sysdeps/unix/sysv/linux/powerpc/libc-start.c:93 #13 0x0000000000000000 in ?? () Breakpoint 1, boost::filesystem::path::imbue (loc=...) at ../libs/filesystem/src/path.cpp:918 918 std::locale temp(path_locale); p loc $1 = (const std::locale &) @0x3ffffffff418: {static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x100790f0, static _S_classic = 0x3fffb7fae0b8 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x3fffb7fae0b8 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x3fffb7f92cb8 <__gnu_cxx::category_names>, static _S_once = 0} p path_locale $2 = {static none = 0, static ctype = 1, static numeric = 2, static collate = 4, static time = 8, static monetary = 16, static messages = 32, static all = 63, _M_impl = 0x0, static _S_classic = 0x3fffb7fae0b8 <(anonymous namespace)::c_locale_impl>, static _S_global = 0x3fffb7fae0b8 <(anonymous namespace)::c_locale_impl>, static _S_categories = 0x3fffb7f92cb8 <__gnu_cxx::category_names>, static _S_once = 0} It looks like something wrong happened here: std::locale::locale (this=0x100783d0 , __other=...) at ../../../../../src/libstdc++-v3/src/c++98/locale.cc:80 in the libstdc++ library, since correct address was changed to 0x0 address in __atomic_add_dispatch . BOOST : libs/filesystem/src/path.cpp std::locale path::imbue(const std::locale& loc) { std::locale temp(path_locale); path_locale = loc; codecvt_facet_ptr = &std::use_facet >(path_locale); return temp; } /usr/include/c++/4.8/ext/atomicity.h static inline void __attribute__ ((__unused__)) __atomic_add_dispatch(_Atomic_word* __mem, int __val) { #ifdef __GTHREADS if (__gthread_active_p()) __atomic_add(__mem, __val); else __atomic_add_single(__mem, __val); #else __atomic_add_single(__mem, __val); #endif } It looks like some C++ object initialization went bad, for std::locale::locale .