Gabriela Gibson wrote on Mon, Mar 04, 2013 at 23:07:47 +0000:
> On 04/03/13 22:57, Daniel Shahaf wrote:
>> Gabriela Gibson wrote on Mon, Mar 04, 2013 at 22:33:23 +0000:
>>> What I've also found during my experiments at the weekend is that
>>> apr-related entries in LD_FLAGS are edited while configure runs. So:
>>>
>>> LD_FLAGS="-L/usr/local/serf/lib -L/usr/local/apr/lib" ./configure \
>>> --enable-maintainer-mode --with-serf=/usr/local/serf
>>>
>>> failed. Examining config.log showed that the failure appeared to occur
>>> in the link test, and that the entry for "-L/usr/local/apr/lib" has been
>>> removed.
>>>
>>
>> Which link test was it? It's hard to make any comment about the
>> situation without seeing the code and the reason it strips -L flags.
>> (Is that our code, or something in autoconf's m4 library, that strips
>> the -L flags?)
>
> I think there is only check for serf.h, and one check for compiling.
> The compile test has an extra "-L/usr/local/serf/lib" flag, so I've
> mentally referred to it as "the link test".
>
> I've provided the entire serf section of the config.log file in a later
> email, but the section I was referring to is:
>
>> configure:5510: checking for serf_context_create in -lserf-1
>> configure:5535: gcc -o conftest -g -O2 -g -O2 -Wall -Wmissing-prototypes -Wstrict-prototypes -Wmissing-declarations -pthread -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/home/g/trunk3/apr/include -I/home/g/trunk3/apr-util/include -I/usr/local/serf/include/serf-1 -L/usr/local/serf/lib conftest.c -lserf-1 -L/home/g/trunk3/apr-util -laprutil-1 -L/home/g/trunk3/apr -lapr-1 -lz >&5
>> conftest.c:28:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
>> conftest.c:30:1: warning: function declaration isn't a prototype [-Wstrict-prototypes]
>> /usr/bin/ld: cannot find -laprutil-1
>> /usr/bin/ld: cannot find -lapr-1
>> collect2: ld returned 1 exit status
>
Thanks.
>>> The only way I could make the serf link test pass (and also add that
>>> "-L/usr/local/apr/lib" flag) was to supply "--with-apr --with-apr-util" and
>>> that was what my patch documented.
>>>
I think that's the correct solution in your case: passing
--with-apr=$ARG allows configure to ask apr-1-config for the LDFLAGS
value (so you won't need to hardcode it in your configure invocation).
It's not really related to serf, though. As I understand it, the issue
is entirely about making configure find and use the correct libapr: that
one should preferably point configure at libapr via --with-apr=FOO, not
via setting LDFLAGS. Does that make sense?
>>
>> That's.. odd. Adding "--with-apr" (without argument) should actually be
>> a no-op, since APR is a mandatory dependency.
>>
> Ah, bad comms on my part. I've always used --with-apr=/usr/local/apr
> --with apr-util=/usr/local/apr, rather than naked arguments. I didn't
> realise that was misleading.
"--with-apr" is valid and interpreted as "--with-apr=yes". (Same for
any --with-*)
Received on 2013-03-05 00:17:16 CET