FS#49278 - [fakeroot] [glibc] fakeroot complains about missing acl_* symbols

Attached to Project: Arch Linux
Opened by Evangelos Foutras (foutrelis) - Monday, 09 May 2016, 18:18 GMT
Last edited by Bartłomiej Piotrowski (Barthalion) - Saturday, 06 August 2016, 18:58 GMT
Task Type Bug Report
Category Packages: Testing
Status Closed
Assigned To Bartłomiej Piotrowski (Barthalion)
Architecture All
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 16
Private No

Details

Description:

Assigning to both fakeroot and glibc as the issue appeared after the glibc 2.23-3 update.

At first glance it seems to be an underlinking issue but there might be more to it; the connection to glibc warrants some investigation as well.


Additional info:
* package version(s):

glibc 2.23-3
fakeroot 1.20.2-1


Steps to reproduce:

Execute 'fakeroot' with no arguments:

$ fakeroot
dlsym(acl_get_fd): /usr/lib/libfakeroot/libfakeroot.so: undefined symbol: acl_get_fd
dlsym(acl_get_file): /usr/lib/libfakeroot/libfakeroot.so: undefined symbol: acl_get_file
dlsym(acl_set_fd): /usr/lib/libfakeroot/libfakeroot.so: undefined symbol: acl_set_fd
dlsym(acl_set_file): /usr/lib/libfakeroot/libfakeroot.so: undefined symbol: acl_set_file
dlsym(acl_get_fd): /usr/lib/libfakeroot/libfakeroot.so: undefined symbol: acl_get_fd
dlsym(acl_get_file): /usr/lib/libfakeroot/libfakeroot.so: undefined symbol: acl_get_file
dlsym(acl_set_fd): /usr/lib/libfakeroot/libfakeroot.so: undefined symbol: acl_set_fd
dlsym(acl_set_file): /usr/lib/libfakeroot/libfakeroot.so: undefined symbol: acl_set_file
This task depends upon

Closed by  Bartłomiej Piotrowski (Barthalion)
Saturday, 06 August 2016, 18:58 GMT
Reason for closing:  Fixed
Additional comments about closing:  fakeroot 1.21-2
Comment by Evangelos Foutras (foutrelis) - Monday, 09 May 2016, 19:03 GMT Comment by Carlos jimenez (ozmage) - Tuesday, 10 May 2016, 00:38 GMT
i have the same problem here pls fix this thanks in advance .
Comment by Allan McRae (Allan) - Tuesday, 10 May 2016, 03:49 GMT
Does this have any practical implication apart from printing some unwanted output?
Comment by Carlos jimenez (ozmage) - Tuesday, 10 May 2016, 11:05 GMT
no the pkgs can be made without problem with makepkg but i think is not using fakeroot.
and can be installed with pacman with no issues .
Comment by Allan McRae (Allan) - Tuesday, 10 May 2016, 13:53 GMT
This is a fakeroot bug:
https://sourceware.org/bugzilla/show_bug.cgi?id=19509

I don't intend to revert that change for an issue that just causes some spurious output.
Comment by Allan McRae (Allan) - Tuesday, 10 May 2016, 14:42 GMT Comment by Peter Wu (Lekensteyn) - Wednesday, 11 May 2016, 14:35 GMT
The problematic change was reverted for now (glibc 2.23-4).

As for fakeroot, I think the best that can be done now is to remove the error reporting for missing symbols. These can be found with LD_DEBUG=bindings if you really insist but otherwise results in a lot of noise (try to use an interactive shell session for example with tab completion or run "configure" and "make", that is not fun). The problem is that ACL is not part of the C library, so it will never find it unless libacl was loaded before (e.g. for rsync).
Comment by Bartłomiej Piotrowski (Barthalion) - Thursday, 12 May 2016, 20:40 GMT
The commit that exposed problem in fakeroot has been reverted upstream, so bouncing back to Allan…
Comment by Allan McRae (Allan) - Thursday, 12 May 2016, 21:20 GMT
glibc had been fixed for a while! That commit will be back next gcc release, so you probably want to chase this upstream anyway.
Comment by Peter Wu (Lekensteyn) - Thursday, 12 May 2016, 21:22 GMT
The problem is still in fakeroot, it should be patched not to log dlsym errors. glibc has temporary reverted the change, but it will return later (when an incompatibility with AddressSanitizer from GCC/clang is resolved).
Comment by Allan McRae (Allan) - Tuesday, 02 August 2016, 06:04 GMT
I am building glibc-2.24 now. Guess what's back?
Comment by Darek (blablo) - Wednesday, 03 August 2016, 04:25 GMT Comment by Hussam Al-Tayeb (hussam) - Wednesday, 03 August 2016, 13:55 GMT
Is this a cosmetic issue only at the moment or does it cause packaging issues?

Edit: Would modifying the build system to make /usr/lib/libfakeroot/libfakeroot.so link against acl fix this?
Comment by Bartłomiej Piotrowski (Barthalion) - Friday, 05 August 2016, 17:10 GMT
I silenced these messages in fakeroot 1.21-2. I will move it to core after I get enough signoffs.
Comment by Carlos Eduardo Rodrigues Diógenes (cerdiogenes) - Friday, 05 August 2016, 19:34 GMT
I build paper-icon-theme-git with yaourt. I don't know if is only a coincidence, but my last paper-icon-theme-git build printed these "undefined symbol" messages and my icons are a messy (some very large, others don't show). Update: It's not related, I rebuild the package and evertying is working fine now.
Comment by Charlie (vishwin) - Saturday, 06 August 2016, 01:13 GMT
I build my own Firefox and Thunderbird, and so far, Firefox will refuse to package because the Makefile *always* reads and parses the mozconfig. As the undefined symbol messages flood in during packaging, they interfere with mozconfig parsing, causing packaging to fail.
Comment by Chih-Hsuan Yen (yan12125) - Saturday, 06 August 2016, 03:27 GMT
I use fakeroot from [testing] and there are no longer annoying warnings. Here are my steps:

wget --content-disposition "https://www.archlinux.org/packages/testing/x86_64/fakeroot/download/"
sudo pacman -U fakeroot-1.21-2-x86_64.pkg.tar.xz
Comment by Ed Shockley (darkwingbuck13gmail.com) - Saturday, 06 August 2016, 16:52 GMT
The wget command you posted 404's, Yen. Just came to say I do get these same errors in fakeroot 1.21-1 with glibc 2.24-1.
Comment by Chih-Hsuan Yen (yan12125) - Saturday, 06 August 2016, 17:03 GMT
It's now in [core]. Use `pacman -Syu` to get it. Or you may want to download https://www.archlinux.org/packages/core/x86_64/fakeroot/download/ and install it manually.

Loading...