Page MenuHome GnuPG

build process tries to use libcurl when unusable
Closed, ResolvedPublic

Description

Release: CVS HEAD 5 September 2005

Environment

Debian GNU/Linux

Description

Although ./configure says

checking for curl-config... no
checking whether libcurl is usable... no

make fails with:
gcc -DGNUPG_LIBEXECDIR="\"/usr/local/libexec/gnupg\"" -g -O2 -Wall -Wcast-align -Wshadow -Wstrict-prototypes -Wformat-nonliteral -Wno-pointer-sign -o gpg g10.o build-packet.o compress.o compress-bz2.o free-packet.o getkey.o keydb.o keyring.o seskey.o kbnode.o mainproc.o armor.o mdfilter.o textfilter.o progress.o misc.o openfile.o keyid.o parse-packet.o status.o plaintext.o sig-check.o keylist.o signal.o cardglue.o tlv.o card-util.o app-openpgp.o iso7816.o apdu.o ccid-driver.o pkclist.o skclist.o pubkey-enc.o passphrase.o seckey-cert.o encr-data.o cipher.o encode.o sign.o verify.o revoke.o decrypt.o keyedit.o dearmor.o import.o export.o trustdb.o tdbdump.o tdbio.o delkey.o keygen.o pipemode.o helptext.o keyserver.o photoid.o exec.o ../cipher/libcipher.a ../mpi/libmpi.a ../util/libutil.a -lz -lbz2 -lreadline -ldl -lcurl
/usr/bin/ld: cannot find -lcurl
collect2: ld returned 1 exit status

How To Repeat

Do _not_ have libcurl development files installed
./autogen.sh
./configure --enable-maintainer-mode && make

Fix

Do not use libcurl when detected as unusable OR have ./configure fail if libcurl unusable

Event Timeline

What does 'grep -i curl config.h' in the main gpg build directory show?

From: Lionel Elie Mamane <lionel@mamane.lu>
To: bug-any@bugs.gnupg.org
Cc: gnupg-hackers@gnupg.org, gnats-admin@trithemius.gnupg.org,
dshaw@jabberwocky.com
Subject: Re: gnupg/529
Date: Tue, 6 Sep 2005 01:40:35 +0200

On Tue, Sep 06, 2005 at 01:01:00AM +0200, dshaw@jabberwocky.com wrote:

Synopsis: build process tries to use libcurl when unusable

  • Comment added by dshaw on Tue, 06 Sep 2005 01:01:00 +0200 **** What does 'grep -i curl config.h' in the main gpg build directory show?

I hadn't noticed that GnuPG had migrated to SubVersion. Bug does not
appear with current SubVersion version, only the (outdated) CVS
HEAD. Sorry for the mix-up. PR can be closed (but I don't seem to have
a way to do that in the web interface.)

master@tofu:~/src/t/g/gnupg$ grep -i curl config.h
/* define to fake the libcurl API internally */
#define FAKE_CURL 1
/* Define to 1 if you have a functional curl library. */
/* #undef HAVE_LIBCURL */
/* Defined if libcurl supports AsynchDNS */
/* #undef LIBCURL_FEATURE_ASYNCHDNS */
/* Defined if libcurl supports IPv6 */
/* #undef LIBCURL_FEATURE_IPV6 */
/* Defined if libcurl supports KRB4 */
/* #undef LIBCURL_FEATURE_KRB4 */
/* Defined if libcurl supports libz */
/* #undef LIBCURL_FEATURE_LIBZ */
/* Defined if libcurl supports SSL */
/* #undef LIBCURL_FEATURE_SSL */
/* Defined if libcurl supports DICT */
/* #undef LIBCURL_PROTOCOL_DICT */
/* Defined if libcurl supports FILE */
/* #undef LIBCURL_PROTOCOL_FILE */
/* Defined if libcurl supports FTP */
/* #undef LIBCURL_PROTOCOL_FTP */
/* Defined if libcurl supports FTPS */
/* #undef LIBCURL_PROTOCOL_FTPS */
/* Defined if libcurl supports GOPHER */
/* #undef LIBCURL_PROTOCOL_GOPHER */
/* Defined if libcurl supports HTTP */
/* #undef LIBCURL_PROTOCOL_HTTP */
/* Defined if libcurl supports HTTPS */
/* #undef LIBCURL_PROTOCOL_HTTPS */
/* Defined if libcurl supports LDAP */
/* #undef LIBCURL_PROTOCOL_LDAP */
/* Defined if libcurl supports TELNET */
/* #undef LIBCURL_PROTOCOL_TELNET */
/* Define curl_free() as free() if our version of curl lacks curl_free. */
/* #undef curl_free */

Lionel