bug-ncurses
[Top][All Lists]
Advanced

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

Re: Unusual content in lib_gen.c and compile failure?


From: Jeffrey Walton
Subject: Re: Unusual content in lib_gen.c and compile failure?
Date: Sat, 21 Oct 2017 21:39:45 -0400

On Sat, Oct 21, 2017 at 4:40 PM, Thomas Dickey <address@hidden> wrote:
> On Sat, Oct 21, 2017 at 08:37:46AM -0400, Jeffrey Walton wrote:
>> I'm catching a compile failure on Ubuntu 17, x86_64 and GCC 6.2.0.
>> I've been able to duplicate it under 5.8, 5.9 and 6.0. Its unusual and
>> I have not seen it before:
>
> The usual problems with lib_gen.c are the C preprocessor and awk.
> The build-script uses the C preprocessor to obtain the corresponding
> expansion for the functions that act the same as macros (with the same
> name), and awk's used to massage the output into usable C code.
>
> I haven't looked at Ubuntu 17, but it would be helpful to know
>
> a) which ncurses patch-date?  I made a fix here:
>
> https://invisible-island.net/ncurses/NEWS.html#t20150810
>
>    which dealt with awk differences.  Some other machines may use gawk.
>    Debian's mawk package maintainer (an Ubuntu developer) insists on
>    delivering an old version with no bug-fixes applied.

$ which awk
/usr/bin/awk
$ command -v awk
/usr/bin/awk
$ awk --version
awk: not an option: --version
$ awk -W version
mawk 1.3.3 Nov 1996, Copyright (C) Michael D. Brennan

compiled limits:
max NF             32767
sprintf buffer      2040

And rats, I have not been using patches. I've been fetching tarballs
from https://ftp.gnu.org/gnu/ncurses.

Is there a location for the patches? I don't see them discussed at
https://www.gnu.org/software/ncurses/.

> b) compiler version?
>    If it's not awk, then it could be compiler differences (although I've
>    worked through the various incompatibilities introduced by the gcc
>    updates, Ubuntu is known to have package breakage for versions that
>    work in Debian...).

$ gcc --version
gcc (Ubuntu 6.2.0-7ubuntu11) 6.2.0 20161018

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu Zesty Zapus
Release:        17.04
Codename:       zesty

And thanks, I was not aware of the differences until now. I don't use
sed and awk that often, and I did not know Ubuntu used a different
awk. But 1996+<some patches> does seem kind of old.

I can build the latest mawk from sources, or I can install gawk. One
more package is not going to make a difference to me. Patching Ncurses
to work around a defective mawk seems least desirable to me. I feel
like I should fix the root cause. Do you have a recommendation?

I may have found a way to further complicate things... I need to build
Readline from sources but it has caused a few programs problems. For
example, it broke Git signing because Git defers to GnuPG, and GnuPG
uses Readline for the password prompt.

Sorry about all this trouble. The task at hand is to build Git, Wget,
GnuTLS and a few others from sources for downlevel clients like CentOS
5, OS X 10.5 and Solaris 10. They lack Git and have an old Wget that
cannot do SNI.

Jeff



reply via email to

[Prev in Thread] Current Thread [Next in Thread]