[llvm-bugs] [Bug 26784] New: gtkmm fails to compile with clang++

via llvm-bugs llvm-bugs at lists.llvm.org
Tue Mar 1 01:43:07 PST 2016


https://llvm.org/bugs/show_bug.cgi?id=26784

            Bug ID: 26784
           Summary: gtkmm fails to compile with clang++
           Product: clang
           Version: 3.7
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: C++
          Assignee: unassignedclangbugs at nondot.org
          Reporter: john.frankish at outlook.com
                CC: dgregor at apple.com, llvm-bugs at lists.llvm.org
    Classification: Unclassified

Using clang-3.70 and gcc-5.2.0

[clang appears hardcoded to look for the loader in /lib64 rather than lib]
[ld.gold has to be renamed to ld]

This works (to show that clang works in some cicumstances):

$ clang++ -flto -mtune=generic -Os -pipe -std=c++11 -E
gtkmm-3.16.0/gtk/gtkmm/treeviewcolumn.cc -I/usr/local/include/glibmm-2.4 ... >
foo.ii

$ clang++ -v -flto -Os -fPIC -shared -nostdlib -std=c++11 foo.ii

but:

$ CC="clang" CXX="clang++ -flto -Os -std=c++11" ./configure --prefix=/usr/local
--disable-static --localstatedir=/var

$ make
..
libtool: link: clang++ -flto -Os -std=c++11 -Wall -o
extra_defs_gen/generate_defs_gdk extra_defs_gen/generate_defs_gdk.o 
-L/usr/local/lib /usr/local/lib/libatkmm-1.6.so /usr/local/lib/libgiomm-2.4.so
/usr/local/lib/libpangomm-1.4.so /usr/local/lib/libglibmm-2.4.so
/usr/local/lib/libcairomm-1.0.so /usr/local/lib/libsigc-2.0.so
/usr/local/lib/libgtk-3.so /usr/local/lib/libgdk-3.so
/usr/local/lib/libpangocairo-1.0.so /usr/local/lib/libpango-1.0.so
/usr/local/lib/libatk-1.0.so /usr/local/lib/libcairo-gobject.so
/usr/local/lib/libcairo.so /usr/local/lib/libgdk_pixbuf-2.0.so
/usr/local/lib/libgio-2.0.so /usr/local/lib/libgobject-2.0.so
/usr/local/lib/libglib-2.0.so
/usr/local/lib/libglibmm_generate_extra_defs-2.4.so -pthread
extra_defs_gen/generate_defs_gdk.o:extra_defs_gen/generate_defs_gdk.cc:function
main: error: undefined reference to 'get_defs(unsigned long, bool (*)(unsigned
long))'
extra_defs_gen/generate_defs_gdk.o:extra_defs_gen/generate_defs_gdk.cc:function
main: error: undefined reference to 'get_defs(unsigned long, bool (*)(unsigned
long))'
extra_defs_gen/generate_defs_gdk.o:extra_defs_gen/generate_defs_gdk.cc:function
main: error: undefined reference to 'get_defs(unsigned long, bool (*)(unsigned
long))'
extra_defs_gen/generate_defs_gdk.o:extra_defs_gen/generate_defs_gdk.cc:function
main: error: undefined reference to 'get_defs(unsigned long, bool (*)(unsigned
long))'
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Makefile:454: recipe for target 'extra_defs_gen/generate_defs_gdk' failed
make[2]: *** [extra_defs_gen/generate_defs_gdk] Error 1
make[2]: Leaving directory '/usr/src/gtkmm-3.16.0/tools'
Makefile:753: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/usr/src/gtkmm-3.16.0'
Makefile:538: recipe for target 'all' failed

$ clang++ -v -flto -Os -std=c++11 -Wall -o extra_defs_gen/generate_defs_gdk
extra_defs_gen/generate_defs_gdk.o  -L/usr/local/lib
/usr/local/lib/libatkmm-1.6.so /usr/local/lib/libgiomm-2.4.so
/usr/local/lib/libpangomm-1.4.so /usr/l
ocal/lib/libglibmm-2.4.so /usr/local/lib/libcairomm-1.0.so
/usr/local/lib/libsigc-2.0.so /usr/local/lib/libgtk-3.so /usr/local/lib/lib
gdk-3.so /usr/local/lib/libpangocairo-1.0.so /usr/local/lib/libpango-1.0.so
/usr/local/lib/libatk-1.0.so /usr/local/lib/libcairo-gobject.so
/usr/local/lib/libcairo.so /usr/local/lib/libgdk_pixbuf-2.0.so
/usr/local/lib/libgio-2.0.so /usr/local/lib/libgobject-2.0.so
/usr/local/lib/libglib-2.0.so
/usr/local/lib/libglibmm_generate_extra_defs-2.4.so -pthread
clang version 3.7.0 (tags/RELEASE_370/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix
Found candidate GCC installation:
/usr/local/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.2.0
Selected GCC installation:
/usr/local/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.2.0
Candidate multilib: .;@m64
Selected multilib: .;@m64
 "/usr/local/bin/ld" --eh-frame-hdr -m elf_x86_64 -dynamic-linker
/lib64/ld-linux-x86-64.so.2 -o extra_defs_gen/generate_defs_gdk /usr/lib/crt1.o
/usr/lib/crti.o
/usr/local/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.2.0/crtbegin.o
-L/usr/local/lib -L/usr/local/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.2.0
-L/lib/../lib64
-L/usr/local/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.2.0/../../..
-L/usr/local/bin/../lib -L/lib -L/usr/lib -plugin
/usr/local/bin/../lib/LLVMgold.so -plugin-opt=mcpu=x86-64
extra_defs_gen/generate_defs_gdk.o /usr/local/lib/libatkmm-1.6.so
/usr/local/lib/libgiomm-2.4.so /usr/local/lib/libpangomm-1.4.so
/usr/local/lib/libglibmm-2.4.so /usr/local/lib/libcairomm-1.0.so
/usr/local/lib/libsigc-2.0.so /usr/local/lib/libgtk-3.so
/usr/local/lib/libgdk-3.so /usr/local/lib/libpangocairo-1.0.so
/usr/local/lib/libpango-1.0.so /usr/local/lib/libatk-1.0.so
/usr/local/lib/libcairo-gobject.so /usr/local/lib/libcairo.so
/usr/local/lib/libgdk_pixbuf-2.0.so /usr/local/lib/libgio-2.0.so
/usr/local/lib/libgobject-2.0.so /usr/local/lib/libglib-2.0.so
/usr/local/lib/libglibmm_generate_extra_defs-2.4.so -lstdc++ -lm -lgcc_s -lgcc
-lpthread -lc -lgcc_s -lgcc
/usr/local/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.2.0/crtend.o
/usr/lib/crtn.o
extra_defs_gen/generate_defs_gdk.o:extra_defs_gen/generate_defs_gdk.cc:function
main: error: undefined reference to 'get_defs(unsigned long, bool (*)(unsigned
long))'
extra_defs_gen/generate_defs_gdk.o:extra_defs_gen/generate_defs_gdk.cc:function
main: error: undefined reference to 'get_defs(unsigned long, bool (*)(unsigned
long))'
extra_defs_gen/generate_defs_gdk.o:extra_defs_gen/generate_defs_gdk.cc:function
main: error: undefined reference to 'get_defs(unsigned long, bool (*)(unsigned
long))'
extra_defs_gen/generate_defs_gdk.o:extra_defs_gen/generate_defs_gdk.cc:function
main: error: undefined reference to 'get_defs(unsigned long, bool (*)(unsigned
long))'
clang: error: linker command failed with exit code 1 (use -v to see invocation)

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20160301/40d1e550/attachment-0001.html>


More information about the llvm-bugs mailing list