Description of problem: When compiling freeswitch the process exits with an error in libgcrypt Version-Release number of selected component (if applicable): Name : libgcrypt Arch : x86_64 Version : 1.4.5 Release : 4.fc13 How reproducible: always Steps to Reproduce: 1. download the source code for freeswitch (www.freeswitch.org) 2. ./configure 3. make mod_dingaling Actual results: making all mod_dingaling Compiling ../../../../libs/libdingaling/src/libdingaling.c... Compiling ../../../../libs/libdingaling/src/sha1.c... Making all in include Making all in src libtool: link: rm -fr .libs/libiksemel.a .libs/libiksemel.la .libs/libiksemel.lai libtool: link: ar cru .libs/libiksemel.a libiksemel_la-ikstack.o libiksemel_la-utility.o libiksemel_la-iks.o libiksemel_la-sax.o libiksemel_la-dom.o libiksemel_la-io-posix.o libiksemel_la-stream.o libiksemel_la-sha.o libiksemel_la-jabber.o libiksemel_la-filter.o libiksemel_la-md5.o libiksemel_la-base64.o libtool: link: ranlib .libs/libiksemel.a libtool: link: ( cd ".libs" && rm -f "libiksemel.la" && ln -s "../libiksemel.la" "libiksemel.la" ) Making all in tools libtool: link: gcc -g -O2 -Wall -o ikslint ikslint.o hash.o ../src/.libs/libiksemel.a -lgnutls -lpthread libtool: link: gcc -g -O2 -Wall -o iksroster iksroster.o ../src/.libs/libiksemel.a -lgnutls -lpthread /usr/bin/ld: ../src/.libs/libiksemel.a(libiksemel_la-stream.o): undefined reference to symbol 'gcry_control@@GCRYPT_1.2' /usr/bin/ld: note: 'gcry_control@@GCRYPT_1.2' is defined in DSO /lib64/libgcrypt.so.11 so try adding it to the linker command line /lib64/libgcrypt.so.11: could not read symbols: Invalid operation collect2: ld returned 1 exit status make[6]: *** [iksroster] Error 1 Making all in test tst-ikstack.c: In function 'test_stack': tst-ikstack.c:33: warning: format '%d' expects type 'int', but argument 3 has type 'long unsigned int' libtool: link: gcc -g -O2 -Wall -o tst-ikstack tst-ikstack.o ../src/.libs/libiksemel.a -lgnutls -lpthread libtool: link: gcc -g -O2 -Wall -o tst-iks tst-iks.o ../src/.libs/libiksemel.a -lgnutls -lpthread libtool: link: gcc -g -O2 -Wall -o tst-sax tst-sax.o ../src/.libs/libiksemel.a -lgnutls -lpthread libtool: link: gcc -g -O2 -Wall -o tst-dom tst-dom.o ../src/.libs/libiksemel.a -lgnutls -lpthread libtool: link: gcc -g -O2 -Wall -o tst-sha tst-sha.o ../src/.libs/libiksemel.a -lgnutls -lpthread libtool: link: gcc -g -O2 -Wall -o tst-md5 tst-md5.o ../src/.libs/libiksemel.a -lgnutls -lpthread libtool: link: gcc -g -O2 -Wall -o tst-filter tst-filter.o ../src/.libs/libiksemel.a -lgnutls -lpthread libtool: link: gcc -g -O2 -Wall -o tst-jid tst-jid.o ../src/.libs/libiksemel.a -lgnutls -lpthread Making all in doc make[5]: *** [all-recursive] Error 1 make[4]: *** [../../../../libs/iksemel/src/libiksemel.la] Error 2 make[3]: *** [all] Error 1 make[2]: *** [mod_dingaling-all] Error 1 make[1]: *** [mod_dingaling] Error 2 make: *** [mod_dingaling] Error 2 Expected results: To compile the module Additional info: Linux titan 2.6.33.6-147.2.4.fc13.x86_64 #1 SMP Fri Jul 23 17:14:44 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux gcc (GCC) 4.4.4 20100630 (Red Hat 4.4.4-10)
=> http://fedoraproject.org/wiki/UnderstandingDSOLinkChange ? if the code is using gcry_control directly it should link against -lgcrypt not just -lgnutls.
Exactly