On Mon, Nov 06, 2006, Lois Bennett wrote:

> I am trying to build the upgrade for my whole environment.  I am using
>
> openpkg build -ZaKB -f /n/e4/OPENPKG/stable/2/SRC/00INDEX.rdf.bz2 -r
> /n/e4/OPENPKG/stable/2/SRC/ | sh
>
> it went along fine until I came to lynx (which comes after openssl) and
> lynx is just not working.  I would just uninstallit and try moving on
> but I know from earlier experience that this problem will show up in
> other parts so I have to fix it.  Here is the error:
> ------------------------
> .....
> Installing /n/e4/OPENPKG/stable/2/SRC/BASE/lynx-2.8.6-2.20061022.src.rpm
> Executing(%prep): env -i /ilocal/lib/openpkg/bash --norc --noprofile
> --posix -e /ilocal/RPM/TMP/rpm-tmp.16120
> + cd /ilocal/RPM/TMP
> + cd /ilocal/RPM/TMP
> + rm -rf lynx2-8-6
> + /ilocal/lib/openpkg/bzip2 -dc /ilocal/RPM/SRC/lynx/lynx2.8.6.tar.bz2
> + /ilocal/lib/openpkg/tar -xf -
> + STATUS=0
> + '[' 0 -ne 0 ']'
> + cd lynx2-8-6
> + exit 0
> Executing(%build): env -i /ilocal/lib/openpkg/bash --norc --noprofile
> --posix -e /ilocal/RPM/TMP/rpm-tmp.11094
> + cd /ilocal/RPM/TMP
> + cd lynx2-8-6
> + CC=/ilocal/bin/cc
> + CFLAGS='-O2 -pipe'
> + CPPFLAGS=-I/ilocal/include
> + LDFLAGS=-L/ilocal/lib
> + ./configure --prefix=/ilocal --sysconfdir=/ilocal/etc/lynx
> --libdir=/ilocal/etc/lynx --disable-trace --disable-nls
> --with-screen=slang --with-ssl=/ilocal --enable-default-colors
> --enable-prettysrc --enable-read-eta --enable-scrollbar
> --enable-nested-tables --with-bzlib --with-zlib
> checking build system type... sparc-sun-solaris2.9
> checking host system type... sparc-sun-solaris2.9
> checking target system type... sparc-sun-solaris2.9
> Configuring for solaris2.9
> checking for gcc... /ilocal/bin/cc
> checking for C compiler default output... a.out
> checking whether the C compiler works... yes
> ........
> checking if we can link to ssl library... no
> configure: error: Cannot link with ssl library
> error: Bad exit status from /ilocal/RPM/TMP/rpm-tmp.11094 (%build)
>
> RPM build errors:
>    Bad exit status from /ilocal/RPM/TMP/rpm-tmp.11094 (%build)
> [EMAIL PROTECTED]:/ilocal/RPM/SRC/lynx - 15:58:15 #
> -------------------
>
> in the RPM/TMP/lynx2-8-6/config.log I have this information:
> ---------------------
> configure:9234: checking for openssl include directory
> configure:9251: /ilocal/bin/cc -c -O2 -pipe  -I/ilocal/include
> -I/ilocal/include -D__EXTENSIONS__ conftest.c >&5
> configure:9254: $? = 0
> configure:9257: test -s conftest.o
> configure:9260: $? = 0
> configure:9269: result: yes
> configure:9277: checking if we can link to ssl library
> configure:9299: /ilocal/bin/cc -o conftest -O2 -pipe  -I/ilocal/include
> -I/ilocal/include -D__EXTENSIONS__ -L/ilocal/lib conftest.c
> -L/ilocal/lib -lssl -lcrypto
>  -lnsl -lsocket  >&5
> /ilocal/lib/libcrypto.a(c_zlib.o): In function `zlib_stateful_expand_block':
> c_zlib.c:(.text+0x70): undefined reference to `inflate'
> /ilocal/lib/libcrypto.a(c_zlib.o): In function
> `zlib_stateful_compress_block':
> -----------------
>
> This is not the first time I have seen this.  In the past I have fixed a
> problem like this by going into the spec file and adding the zlib before
> the ssl and crypto libs.
>
> I am having less success this time since I can't find where to add them
> in this spec.  I would like to make the fix apply to all subsequent
> builds so I can avoid manually adding it.
>
> Can someone tell me where to add this library change? Has anyone else
> seen this before?

The problem is that you have built the "openssl" package with option
"with_zlib". This way it correctly dependes on "zlib" and even
the openssl.pc pkg-config(1) file contains a reference to this.
Unfortunately mostly all Autoconf checks for OpenSSL do _NOT_ use the
openssl.pc and hence they don't know that a "-lz" is required. This is a
long-standing problem we cannot easily workaround except by adding lots
of nasty hacks to lots of packages. As the "with_zlib" is by default off
and the SSL/TLS compression is not really used by most of the SSL/TLS
based applications, we decided to just wait until more OpenSSL users
hopefully adopt to use openssl.pc.

So, sorry, the "with_zlib" option is currently useful only in a very
small OpenPKG instance and where "openssl" is needed for an own
application (instead as a dependency for SSL/TLS based other packages).
You really have to turn it off in a full-size OpenPKG instance. OTOH, I
currently don't know of any real drawbacks, as I said, mostly no SSL/TLS
applications takes advantage of the compression support in SSL/TLS.

                                       Ralf S. Engelschall
                                       [EMAIL PROTECTED]
                                       www.engelschall.com

______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
User Communication List                      openpkg-users@openpkg.org

Reply via email to