Re: git-compat-util.h:735:13: error: conflicting types for 'inet_ntop'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 30, 2017 at 4:30 PM, Junio C Hamano <gitster@xxxxxxxxx> wrote:
> Jeffrey Walton <noloader@xxxxxxxxx> writes:
>
>> On Wed, Mar 29, 2017 at 1:11 PM, Junio C Hamano <gitster@xxxxxxxxx> wrote:
>>> Jeffrey Walton <noloader@xxxxxxxxx> writes:
>>>
>>>> Some more 2.12.2 testing on Solaris 11.3 x86_64:
>>>>
>>>> $ make V=1
>>>> gcc -o credential-store.o -c -MF ./.depend/credential-store.o.d -MQ
>>>> credential-store.o -MMD -MP -I/usr/local/include -m64 -m64 -I.
>>>> -D__EXTENSIONS__ -D__sun__ -DUSE_LIBPCRE -I/usr/local/include
>>>> -DHAVE_ALLOCA_H -I/usr/local/include -DUSE_CURL_FOR_IMAP_SEND
>>>> -I/usr/local/include -I/usr/local/include -DNO_D_TYPE_IN_DIRENT
>>>> -DNO_INET_NTOP -DNO_INET_PTON  -DHAVE_PATHS_H -DHAVE_LIBCHARSET_H
>>>
>>> Looking at config.mak.uname, nothing in SunOS section seems to set
>>> NO_INET_NTOP or NO_INET_PTON.  Why is your build setting them?
>>
>> Thanks. It looks like the following is the culprit (from config.log).
>> Am I supposed to specify the socket library, or is Autotools supposed
>> to specify it?
>>
>> To date, I've been specify the libraries I request, like IDN2, PCRE,
>> cURL and OpenSSL.
>>
>> I don't recall specifying a socket library in the past, so I'm not
>> sure what is supposed to happen here.
>
> I'd be hated for saying this by many people, but my suspicion is
> that those who build Git are often better off ignoring the autoconf
> part of the build procedure, as it is my impression that ./configure
> we ship is not as well maintained as the Makefile.
>
> Looking through the first part of Makefile, I notice that INET_NTOP
> and INET_PTON bits are not described; we probably should add these
> two close to where we say "Define NO_IPV6 if you lack IPv6 support".

Lol... I avoid Autotools when I can, too.

In this case, since Git supplies Autotools and the fix looks easy,
maybe -lnsl -lsockets is the path to chose on Solaris. It ensures
things "just work" under the common case. It will avoid future
problems, and keep the mailing list dark and silent.

One other thing I try to engineer around... folks usually don't read
README's. I fell if README's were going to work, then it would have
happened by now in the last 40 or 50 years. Since the indicators tell
me they don't work, I don't depend on them.

I guess another option is to remove Autotools. I'm fine with using GNU
Make as the primary build system. But like you said, other folks may
want to tar and feather you for it.

Jeff



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]