Bug 488702 - libgcrypt-1.4.4-3.fc11 has broken build for apps using gcrypt/gnutls
libgcrypt-1.4.4-3.fc11 has broken build for apps using gcrypt/gnutls
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: libgcrypt (Show other bugs)
rawhide
All Linux
low Severity medium
: ---
: ---
Assigned To: Tomas Mraz
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2009-03-05 05:05 EST by Daniel Berrange
Modified: 2009-03-05 05:52 EST (History)
4 users (show)

See Also:
Fixed In Version: libgcrypt-1.4.4-4.fc11
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-03-05 05:52:46 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Daniel Berrange 2009-03-05 05:05:57 EST
Description of problem:
We use gnutls (and thus libgcrypt) in libvirt. After updating to libgcrypt-1.4.4-3.fc11 we fail to link when doing builds 

http://koji.fedoraproject.org/koji/getfile?taskID=1223146&name=build.log

configure:46109: checking for gnutls_handshake in -lgnutls
configure:46144: gcc -o conftest -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i586 -mtune=generic -fasynchronous-unwind-tables   conftest.c -lgnutls -lgcrypt -lpthread  >&5
/usr/lib/gcc/i586-redhat-linux/4.4.0/../../../libgcrypt.so: undefined reference to `dlsym'
/usr/lib/gcc/i586-redhat-linux/4.4.0/../../../libgcrypt.so: undefined reference to `dladdr'
/usr/lib/gcc/i586-redhat-linux/4.4.0/../../../libgcrypt.so: undefined reference to `dlopen'
/usr/lib/gcc/i586-redhat-linux/4.4.0/../../../libgcrypt.so: undefined reference to `dlclose'
collect2: ld returned 1 exit status
configure:46150: $? = 1


It appears 1.4.4-3.fc11 has added some new link time library dependencies which is really not good because it breaks any app using libgcrypt which dos not happen to already use libdl.so

Version-Release number of selected component (if applicable):
1.4.4-3.fc11

How reproducible:
Always

Steps to Reproduce:
1. cat > gdemo.c <<EOF
extern int gcry_error_from_errno(int);

int main(void) {
  return gcry_error_from_errno(0);
}
EOF

2. gcc -o gdemo -lgcrypt gdemo.c
3.
  
Actual results:
/usr/lib/gcc/x86_64-redhat-linux/4.4.0/../../../../lib64/libgcrypt.so: undefined reference to `dlsym'
/usr/lib/gcc/x86_64-redhat-linux/4.4.0/../../../../lib64/libgcrypt.so: undefined reference to `dladdr'
/usr/lib/gcc/x86_64-redhat-linux/4.4.0/../../../../lib64/libgcrypt.so: undefined reference to `dlopen'
/usr/lib/gcc/x86_64-redhat-linux/4.4.0/../../../../lib64/libgcrypt.so: undefined reference to `dlclose'
collect2: ld returned 1 exit status


Expected results:
gdemo binary is created

Additional info:
This is blocking libvirt builds in rawhide required for beta release

Downgrading to 1.4.4-2.fc11 makes everything work fine again.
Comment 1 Tomas Mraz 2009-03-05 05:52:46 EST
It was missing DT_NEEDED on libdl. Fixed.

Note You need to log in before you can comment on or make changes to this bug.