https://sourceware.org/bugzilla/show_bug.cgi?id=31864
Bug ID: 31864 Summary: libctf.la issues with dependency libraries Product: binutils Version: 2.43 (HEAD) Status: NEW Severity: normal Priority: P2 Component: libctf Assignee: unassigned at sourceware dot org Reporter: eliz at gnu dot org Target Milestone: --- The file libctf.la produced when building libctf with MinGW tools, as part of the current gdb-15.0.91 pretest, looks wrong in how it spells out the dependencies: dependency_libs=' -L/d/gnu/gdb-15.0.91/libctf/../libiberty -Ld:/usr/lib /d/gnu/gdb-15.0.91/bfd/libbfd.la /d/gnu/gdb-15.0.91/libsframe/libsframe.la -liberty d:/usr/lib/libintl.la -liconv d:/usr/lib/libiconv.la -lz' I see two problems here: 1. The -liberty library is mentioned not immediately after the corresponding -L argument, which is -L/d/gnu/gdb-15.0.91/libctf/../libiberty, but after some other -L arguments. This could cause the wrong version of libiberty.a to be linked in. This actually happened to me (I had an old version of libiberty.a in one of those directories), and it caused the linker to fail due to multiple definitions of symbols. 2. Both libiconv.la and -liconv are mentioned. AFAIU, only one of them should be mentioned, depending on whether the included libiconv or the system libiconv are used. For example, dependency on zlib is listed correctly, as -lz, since this build was using the system zlib. -- You are receiving this mail because: You are on the CC list for the bug.