If I try and compile mesa with clang (even using ld.bfd) I get these errors:
libtool: link: clang++ -m32 -fvisibility=hidden -Werror=pointer-arith -Werror=vla -O2 -march=native -pipe -Wall -fno-math-errno -fno-trapping-math -Qunused-arguments -O2 -march=native -pipe -fuse-ld=bfd -o glsl_compiler glsl/main.o glsl/.libs/libstandal one.a -lz -lpthread -pthread glsl/.libs/libstandalone.a(libmesautil_la-disk_cache.o): In function `disk_cache_remove': /var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/util/disk_cache.c:(.text+0x752): undefined reference to `__atomic_fetch_add_8' glsl/.libs/libstandalone.a(libmesautil_la-disk_cache.o): In function `cache_put': /var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/util/disk_cache.c:(.text+0xa76): undefined reference to `__atomic_fetch_add_8' /var/tmp/portage/media-libs/mesa-9999/work/mesa-9999/src/util/disk_cache.c:(.text+0xe40): undefined reference to `__atomic_fetch_add_8' On Mon, 24 Jul 2017 at 00:03 Mike Lothian <m...@fireburn.co.uk> wrote: > This is only an issue when using ld.gold, ld.bfd works fine which is > probably why no one else has seen it. It only started being a problem when > the dmabuff stuff landed and the makefiles were cleaned up > > I tried playing around with the dummy.cpp but I couldn't get it to trigger > the c++ compiler > > On Fri, 21 Jul 2017 at 13:27 Emil Velikov <emil.l.veli...@gmail.com> > wrote: > >> On 20 July 2017 at 21:25, Mike Lothian <m...@fireburn.co.uk> wrote: >> > Because libmesautil.la includes string_to_uint_map.o, -lstdc++ is >> > required for linking to succeed >> > >> It's a bit suspicious why not many others are seeing this issue. >> Suspecting the GCC version/build flags has something to do here. >> >> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101851 >> > >> > Signed-off-by: Mike Lothian <m...@fireburn.co.uk> >> > --- >> > src/egl/Makefile.am | 2 +- >> > 1 file changed, 1 insertion(+), 1 deletion(-) >> > >> > diff --git a/src/egl/Makefile.am b/src/egl/Makefile.am >> > index 7c1a4929b8..830ed52b86 100644 >> > --- a/src/egl/Makefile.am >> > +++ b/src/egl/Makefile.am >> > @@ -83,7 +83,7 @@ AM_CFLAGS += $(WAYLAND_CFLAGS) >> > libEGL_common_la_LIBADD += $(WAYLAND_LIBS) >> > libEGL_common_la_LIBADD += $(LIBDRM_LIBS) >> > libEGL_common_la_LIBADD += $(top_builddir)/src/egl/wayland/wayland-drm/ >> libwayland-drm.la >> > -libEGL_common_la_LIBADD += $(top_builddir)/src/util/libmesautil.la >> > +libEGL_common_la_LIBADD += $(top_builddir)/src/util/libmesautil.la >> -lstdc++ >> >> As mentioned by Ken - ideally we won't be pulling C++ into libEGL. Can >> you give try converting string_to_uint_map to C? >> Alternatively use the dummy.cpp suggestion from Matt. We already have >> some examples in the codebase. >> >> Thanks >> Emil >> >
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev