reproduce-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Reproduce-devel] [bug #56702] Undefined libiconv symbols in libstdc++


From: Mohammad Akhlaghi
Subject: [Reproduce-devel] [bug #56702] Undefined libiconv symbols in libstdc++
Date: Wed, 31 Jul 2019 11:48:49 -0400 (EDT)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0

URL:
  <https://savannah.nongnu.org/bugs/?56702>

                 Summary: Undefined libiconv symbols in libstdc++
                 Project: Reproducible paper template
            Submitted by: makhlaghi
            Submitted on: Wed 31 Jul 2019 04:48:47 PM BST
                Category: None
                Severity: 3 - Normal
              Item Group: Crash
                  Status: In Progress
                 Privacy: Public
             Assigned to: makhlaghi
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

After adding the libiconv <https://www.gnu.org/software/libiconv/> library to
the template, the C++ library uses three of its functions (`libiconv',
`libiconv_open' and `libiconv_close'):


$ nm .local/lib/libstdc++.so | grep iconv
                 U libiconv
                 U libiconv_close
                 U libiconv_open


However, it will not include an internal link to our installed libiconv:


$ ldd .local/lib/libstdc++.so
        linux-vdso.so.1 (0x00007ffdd0950000)
        libm.so.6 => /usr/lib/libm.so.6 
        libc.so.6 => /usr/lib/libc.so.6 
        /usr/lib64/ld-linux-x86-64.so.2 
        libgcc_s.so.1 => /PROJECTLIBDIR/libgcc_s.so.1 


I tried by exporting `LIBS=-liconv' before the GCC configure script but it
crashed as soon as it went on to the second GCC building stage (because this
environment variable was no longer present there). I also tried adding the C++
configure option of `--enable-cstdio' to the GCC configure options (so it
doesn't use iconv according to the manual), but it made no change.

As a brute-force solution, I am now trying to use `patchelf --add-needed' to
manually add libiconv inside the `libstdc++' shared library.

This bug was found by Roberto Baena Galle while trying to load Matplotlib
(which needed the C++ library).





    _______________________________________________________

Reply to this item at:

  <https://savannah.nongnu.org/bugs/?56702>

_______________________________________________
  Message sent via Savannah
  https://savannah.nongnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]