cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: curl-7.29.0: 'curl' executable fails to link against custom-built OpenSSL

From: Dennis Clarke <dclarke_at_blastwave.org>
Date: Mon, 04 Mar 2013 12:14:47 -0500

> On Mon, Mar 4, 2013 at 4:34 PM, Jeroen De Ridder
> <voetsjoeba+curl_at_gmail.com> wrote:
>
> > curl_LDADD = $(top_builddir)/lib/libcurl.la -lz -lrt
> > #curl_LDADD = $(top_builddir)/lib/libcurl.la -lidn -lssl -lcrypto
> > -lssl -lcrypto -lz -lrt
> >
> > So evidently at one point the -lssl -lcrypto flags were there, but
> > they were commented out and removed. What happened? How come they
> > aren't in there anymore?
>
> That's presumably because the libcurl.la file includes something like
> this (taken from a recent libcurl build I did):
>
> ..
> # Libraries that this one depends upon.
> dependency_libs=' -lidn -lrtmp -lssh2 -lssl -lcrypto -lldap -lz -lrt'
> ..
> which should make the linker load those additional libraries automatically.

I recently built openssl 1.0.1e on Solaris and therefore had to avoid all old
linkages with the ancient ( relatively ) 0.9.7d that comes with Solaris 10.

this resulted in a .la files and .pc files for both libssh2 and gnutls etc :

/usr/local/lib/pkgconfig/nettle.pc
/usr/local/lib/pkgconfig/gnutls.pc
/usr/local/lib/pkgconfig/libssh2.pc
/usr/local/lib/pkgconfig/hogweed.pc

and

/usr/local/lib/libgnutls-openssl.la
/usr/local/lib/libgnutls-xssl.la
/usr/local/lib/libssh2.la
/usr/local/ssl/lib/pkgconfig/libcrypto.pc
/usr/local/ssl/lib/pkgconfig/libssl.pc
/usr/local/ssl/lib/pkgconfig/openssl.pc

All of those have to be checked to ensure that curl/libcurl builds smoothly.

Well, not too sure about the hogweed stuff. I end up with this after configure :

configure: Configured to build curl/libcurl:

  curl version: 7.29.0
  Host setup: sparc-sun-solaris2.10
  Install prefix: /usr/local
  Compiler: /opt/solarisstudio12.3/bin/cc
  SSL support: enabled (OpenSSL)
  SSH support: enabled (libSSH2)
  zlib support: enabled
  krb4 support: no (--with-krb4*)
  GSSAPI support: no (--with-gssapi)
  SPNEGO support: no (--with-spnego)
  TLS-SRP support: enabled
  resolver: default (--enable-ares / --enable-threaded-resolver)
  ipv6 support: enabled
  IDN support: enabled
  Build libcurl: Shared=yes, Static=yes
  Built-in manual: enabled
  --libcurl option: enabled (--disable-libcurl-option)
  Verbose errors: enabled (--disable-verbose)
  SSPI support: no (--enable-sspi)
  ca cert bundle: no
  ca cert path: no
  LDAP support: enabled (OpenLDAP)
  LDAPS support: enabled
  RTSP support: enabled
  RTMP support: no (--with-librtmp)
  metalink support: no (--with-libmetalink)
  Protocols: DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS LDAP LDAPS P
OP3 POP3S RTSP SCP SFTP SMTP SMTPS TELNET TFTP

The ca-cert path annoys me but I can live without it.

Really, one has to tread carefully and watch for the use of LD_RUNPATH and such.
Took me days to get a nice curl/libcurl that now "just works".

dc

ps: what good is a "CONFIDENTIALITY" tag on your email to a maillist?

-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2013-03-04