I've been experimenting in a slightly different environment (RHEL vs Fedora) but have
been seeing oddly similar results. The use or not of the "-pipe" in GCC
didn't seem to help. If I forced the make in the %build step to be just
"make" (aka, "make -j1"), I could always get a build to work, albeit
slowly.
It turns out there is a typo in the spec file; look for the string
"WTIH_BABELTRACE" -- that should be "WITH_BABELTRACE". In the
environment I'm using, "make -j32" is the default state. If I leave the
typo alone and do not change the "make -j32", I can pretty consistently get the
ceph build to fail; the failure moves around a bit but generally seems to hang around with
where the babeltrace headers are being used (somewhere in RBD code, usually). If I fix
the typo -- and change nothing else -- the build succeeds.
Would you mind trying this one change -- fixing the typo *only* -- and see if you get the
same results?