cURL / Mailing Lists / curl-users / Single Mail

curl-users

Re: Can't disable libidn with --without-libidn

From: Krzysztof Kowalczyk <kkowalczyk_at_gmail.com>
Date: Fri, 3 Nov 2006 22:44:46 -0800

Correction to my previous e-mail: the problem really is because both
src/config.h and lib/config.h #define HAVE_LIBIDN, even when
--without-libidn is specifically given. Sorry about my confusion about
HAVE_TLD_H.

I checked yet another version (7.15.5) and this one doesn't have this problem.

I noticed 2 other problems, though:
1) --prefix seems to be ignored (I gave ./configure --prefix=foo but
make install tries to install in default /usr/local/lib)
2) when cross-compiling, configure fails to determing size of
curl_off_t, because conftest for that depends on libssl, which should
be not necessary and won't work when cross-compiling e.g. when I
cross-compile on i386 host to arm, even if I have libssl.so for arm
built, it clearly won't work on i386. relevant snipped from
config.log:
configure:32153: checking size of curl_off_t
configure:32565: /opt/holly/toolroot/i386-linux/bin/gcc -o conftest -g
-O2 conftest.c -lssl -lcrypto -ldl -lssl -lcrypto -lz >&5
configure:32568: $? = 0
configure:32574: ./conftest
./conftest: error while loading shared libraries: libssl.so.0.9.7:
cannot open shared object file: No such file or directory

-- kjk

On 11/3/06, Krzysztof Kowalczyk <kkowalczyk_at_gmail.com> wrote:
> I'm cross-compiling curl for a system that doesn't have libidn so I
> tried to disable it by:
> ./configure --without-libidn
>
> However, this doesn't seem to take any effect, even if configure
> claims that idn is not used:
> checking whether to build with libidn... no
>
> Symbol USE_LIBIDN is always defined. It might be because in lib\setup.h:
> #if defined(HAVE_LIBIDN) && defined(HAVE_TLD_H)
> /* The lib was present and the tld.h header (which is missing in libidn 0.3.X
> but we only work with libidn 0.4.1 or later) */
> #define USE_LIBIDN
> #endif
>
> and HAVE_TLD_H is defined in config.h. It seems like it's because
> tld.h is noticed by configure (I have one at /usr/include/tld.h). But
> it doesn't seem right - when I explicitely disable libidn, it
> shouldn't be picked up.
>
> I tried serveral version of curl (7.16, 7.15, 7.14), but none of them
> can be convinced to disable libidn. The do, however, fail in different
> ways.
>
> Regards,
>
> -- kjk
>
Received on 2006-11-04