dns/bind-tools fails to build on 10-stable

Niclas Zeising zeising+freebsd at daemonic.se
Wed Jan 22 13:19:15 UTC 2014


On 01/22/14 08:52, David Demelier wrote:
> 
> On 20/01/2014 20:26, John wrote:
>> On Mon, Jan 20, 2014 at 07:14:04PM +0100, Niclas Zeising wrote:
>>> On 01/20/14 10:29, John wrote:
>>>> Hello list,
>>>>
>>>> On a new 10-stable system, I can't seem to build bind tools. I get the following
>>>> error:
>>>>
>>>> checking host system type... x86_64-portbld-freebsd10.0
>>>> checking whether make sets $(MAKE)... yes
>>>> checking how to print strings... printf
>>>> checking for gcc... cc
>>>> checking whether the C compiler works... no
>>>> configure: error: in `/usr/ports/dns/bind-tools/work/bind-9.9.4-P2':
>>>> configure: error: C compiler cannot create executables
>>>> See `config.log' for more details
>>>> ===>  Script "configure" failed unexpectedly.
>>>> Please report the problem to mat at FreeBSD.org [maintainer] and attach the
>>>> "/usr/ports/dns/bind-tools/work/bind-9.9.4-P2/config.log" including the
>>>> output
>>>> of the failure of your make command. Also, it might be a good idea to
>>>> provide
>>>> an overview of all packages installed on your system (e.g. a
>>>> /usr/local/sbin/pkg-static info -g -Ea).
>>>> *** Error code 1
>>>>
>>>> Stop.
>>>> make[1]: stopped in /usr/ports/dns/bind-tools
>>>> *** Error code 1
>>>>
>>>> Stop.
>>>> make: stopped in /usr/ports/dns/bind-tools
>>>>
>>>> 10-stable is r260886. The ports tree is 340327. Before I directly bother
>>>> the maintainer, I wondered if this is a known issue?
>>>>
>>>> thanks,
>>>>
>>> That is a rather strange error.  Can you provide config.log together
>>> with /etc/make.conf and options for bind-tools?
>>> Regards!
>>> -- 
>>> Niclas
>> Hello, thanks for looking.
>>
>> I "fixed" the problem - looking in config.log, I noticed this:
>>
>> configure:3284: checking build system type
>> configure:3298: result: x86_64-portbld-freebsd10.0
>> configure:3318: checking host system type
>> configure:3331: result: x86_64-portbld-freebsd10.0
>> configure:3352: checking whether make sets $(MAKE)
>> configure:3374: result: yes
>> configure:3442: checking how to print strings
>> configure:3469: result: printf
>> configure:3538: checking for gcc
>> configure:3565: result: cc
>> configure:3794: checking for C compiler version
>> configure:3803: cc --version >&5
>> FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610
>> Target: x86_64-unknown-freebsd10.0
>> Thread model: posix
>> configure:3814: $? = 0
>> configure:3803: cc -v >&5
>> FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610
>> Target: x86_64-unknown-freebsd10.0
>> Thread model: posix
>> configure:3814: $? = 0
>> configure:3803: cc -V >&5
>> cc: error: argument to '-V' is missing (expected 1 value)
>> cc: error: no input files
>> configure:3814: $? = 1
>> configure:3803: cc -qversion >&5
>> cc: error: no input files
>> configure:3814: $? = 1
>> configure:3834: checking whether the C compiler works
>> configure:3856: cc -O2 -pipe -fno-strict-aliasing   -L/usr/lib
>> -lgssapi_krb5 -Wl,-rpath=/usr/lib:/usr/local/lib conftest.c  >&5
>> /usr/bin/ld: cannot find -lgssapi_krb5
>> cc: error: linker command failed with exit code 1 (use -v to see
>> invocation)
>> configure:3860: $? = 1
>> configure:3898: result: no
>> configure: failed program was:
>> | /* confdefs.h */
>> | #define PACKAGE_NAME ""
>> | #define PACKAGE_TARNAME ""
>> | #define PACKAGE_VERSION ""
>> | #define PACKAGE_STRING ""
>> | #define PACKAGE_BUGREPORT ""
>> | #define PACKAGE_URL ""
>> | /* end confdefs.h.  */
>> | 
>>
>> Looked in options and gssapi was enabled by default ( was there after
>> make rmconfig-recursive ) and i don't use kerebos so disabled it, now it
>> builds.
>>
>> Enabled options resulting in successful build are IPv6 SSL and THREADS.
>> Thanks anyway, hope this proves useful to someone. I can post the entire
>> log but it is huge.
> 
> I already felt in that kind of error because I disabled kerberos in my
> src.conf(5) too. I think a good idea would be to enable or disable
> options by default depending on some values from the src.conf(5). This
> can save some time for users which have extremely restrictive
> /etc/src.conf files.

If you have a non default configuration in /etc/src.conf, then you have
to be prepared to change configurations for ports that depends on things
in the base system.  Just parsing /etc/src.conf is probably not a viable
option, since it can have changed without the world being rebuilt, or in
some cases it's not even there (my jails, for instance, are build with a
src.conf on the jailhost, this file is usually not copied to the actual
jail).
In this case, what might be possible to do is to check for the krb5
library on the host, and then error out if the user has selected the
kerberos option.
Also remember that this issue will probably mean that a binary package
of bind-tools will probably not work either.
Regards!
-- 
Niclas



More information about the freebsd-ports mailing list