bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#21590: 25.0.50; MS-Windows; fns.c:4863:21: error: 'MD5_DIGEST_SIZE'


From: Eli Zaretskii
Subject: bug#21590: 25.0.50; MS-Windows; fns.c:4863:21: error: 'MD5_DIGEST_SIZE' undeclared (first use in this function)
Date: Fri, 02 Oct 2015 11:00:01 +0300

> Date:  Fri, 02 Oct 2015 00:00:13 -0700
> From:  Keith David Bershatsky <esq@lawlist.com>
> Cc:  21590@debbugs.gnu.org
> 
> I tracked down another build discrepancy this evening relating to a failure 
> to find `iconv.h`.  It is caused because the default new installation of 
> MinGW comes with a later version of libiconv than used by ezwinports.  I am 
> pretty certain the error comes about when adding `cairo-1.12.16-w32-bin.zip` 
> from ezwinports for the purposes mentioned in the `.../emacs/nt/INSTALL` 
> readme file.  It might be caused by adding `p11-kit-0.9-w32-bin.zip` or 
> `pkg-config-0.28-w32-bin.zip`, but I don't think so.  I have run so many 
> builds recently, it's hard to keep track.

I can only give one advice: do NOT use that newer libiconv (and the
corresponding new libintl).  They are buggy.  They will cause Emacs to
crash on exit.  See this discussion, for example:

  http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00017.html

(it continues into the next month).  There are more similar reports in
the archives.

Always use the libraries from ezwinports.  They are reliable, tested
by many users (myself included) on quite a few different Windows
platforms.  Save yourself a lot of time and hair by refusing to
upgrade to these 2 newer MinGW packages.  I understand this is not
easy if you use mingw-get (I don't), but there's no other way,
unfortunately.

> I think the process of installing packages with MingGW has changed since the 
> early days when the `.../emacs/nt/INSTALL` was written.  There are references 
> on the internet about placing the archives into the main root MinGW directory 
> and they will supposedly be recognized automatically; however, the current 
> installer seems to be using `C:\mingw\var\cache\mingw-get\packages` for 
> storing the default repositories.

I don't understand what do you mean by "repositories".  Where the
packages in their .tar.lzma form are stored is irrelevant.  What
matters is the root of the MinGW installation -- AFAIK this still
defaults to C:\mingw32.

> Placing the ezwinports dependencies into the MinGW root directory or the 
> latter packages directory is insufficient for the old libiconv to be seen as 
> an available install in the graphical installation utility for MinGW.

I don't think you are right, but I don't really understand what you
are saying.  Please describe where you have the libiconv files and how
do you see them "not seen as available".

> After a ton of Googles, I came up with the following to remove the repository 
> default of 1.14-3 and replace it with the older version:
> 
> c:\mingw\bin\mingw-get remove mingw32-libiconv
> 
> c:\mingw\bin\mingw-get install "libiconv=1.13.1-1"
> 
> The result is that the Emacs build no longer fails for failure to find 
> `iconv.h`.

Where was iconv.h before, and how (with what error message) did the
build fail?

> On a different note, I haven't been able to configure `guntls` so that it 
> shows up automatically as an available "yes" Emacs install following a plain 
> `./configure --prefix=/my/path`.  I have extracted all of the following from 
> ezwinports to the MinGW root:
> 
> gnutls-3.3.11-w32-bin.zip
> p11-kit-0.9-w32-bin.zip
> pkg-config-0.28-w32-bin.zip
> gdk-pixbuf-2.30.2-w32-bin.zip
> giflib-5.1.0-w32-bin.zip
> glib-2.38.2-w32-bin.zip
> jpeg-v9a-w32-bin.zip
> libpng-1.6.12-w32-bin.zip
> librsvg-2.40.1-2-w32-bin.zip
> libxml2-2.7.8-w32-bin.zip
> tiff-4.0.3-w32-bin.zip
> zlib-1.2.8-2-w32-bin.zip
> libXpm-3.5.11-w32-bin.zip
> cairo-1.12.16-w32-bin.zip
> 
> Any ideas on how to make the guntls option show up as `yes` when running 
> `./configure` would be greatly appreciated.

Look in your config.log for the tests performed by the configure
script when it probes the system for GnuTLS availability.  If what's
there doesn't explain why it fails, post those parts here, and someone
will help you.

Here's what I have in my config.log about that:

  configure:12780: result: no
  configure:12801: checking for LIBGNUTLS
  configure:12808: $PKG_CONFIG --exists --print-errors "gnutls >= 2.6.6"
  configure:12811: $? = 0
  configure:12825: $PKG_CONFIG --exists --print-errors "gnutls >= 2.6.6"
  configure:12828: $? = 0
  configure:12866: result: yes
  configure:12877: checking for LIBGNUTLS3
  configure:12884: $PKG_CONFIG --exists --print-errors "gnutls >= 3.0.0"
  configure:12887: $? = 0
  configure:12901: $PKG_CONFIG --exists --print-errors "gnutls >= 3.0.0"
  configure:12904: $? = 0
  configure:12942: result: yes





reply via email to

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