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

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

bug#27516: 25.2.50; Building master branch on MSW fails because of gnutl


From: Vincent Belaïche
Subject: bug#27516: 25.2.50; Building master branch on MSW fails because of gnutls and other reasons...
Date: Fri, 30 Jun 2017 12:44:28 +0200

Answers below...

Le 28/06/2017 à 16:09, Noam Postavsky a écrit :
> On Wed, Jun 28, 2017 at 7:31 AM, Vincent Belaïche
> <vincent.belaiche@gmail.com> wrote:
>> When trying to build the latest on master branch, I get this error:
>>
>> --8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
>> configure: error: The following required libraries were not found:
>>      gnutls
>> Maybe some development libraries/packages are missing?
>> If you don't want to link with them give
>>      --with-gnutls=no
>> as options to configure
>> --8<----8<----8<----8<----8<--  end  -->8---->8---->8---->8---->8----
>>
>> I am using configure with the following command line:
>>
>> --8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
>>   ./configure --prefix=c:/Nos_Programmes/GNU/Emacs \
>>                           --without-jpeg \
>>                           --without-tiff \
>>                           --without-gif \
>>                           --without-png \
>>                           --with-gnutls=no
>> --8<----8<----8<----8<----8<--  end  -->8---->8---->8---->8---->8----
>
>>
>> So I am surprised. Also without `--with-gnutls=no' I get the same error
>> message, although I have put under my mingw directory the gnutls binary
>> from sourceforge EZWinPorts, but configure does not detect its presence.
>
> ./configure uses pkg-config to test for gnutls, so you need to have
> pkg-config as well as the gnutls.pc file in the pkg-config
> PKG_CONFIG_PATH. Try running

OK, I could get some gnutls.pc file with the gnutls library and I edited
it for the content to match my installation, so now it is as follows:

--8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
# Process this file with autoconf to produce a pkg-config metadata file.

# Copyright (C) 2004-2012 Free Software Foundation, Inc.

# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
# notice and this notice are preserved.  This file is offered as-is,
# without any warranty.

# Author: Simon Josefsson

prefix=/mingw
exec_prefix=/mingw
libdir=/mingw/lib
includedir=/mingw/include/gnutls

Name: GnuTLS
Description: Transport Security Layer implementation for the GNU system
URL: http://www.gnutls.org/
Version: 3.3.13
Libs: -L${libdir} -lgnutls
# Libs.private: -Ld:/usr/lib -lgmp -lz -lintl -liconv -lws2_32
# Requires.private: nettle, hogweed, libtasn1, libidn, zlib
Cflags: -I${includedir}
--8<----8<----8<----8<----8<--  end  -->8---->8---->8---->8---->8----



>
>    pkg-config --debug gnutls

After doing these tricks about gnutls.pc, I get this:

--8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
$ pkg-config --debug gnutls
no output option set, defaulting to --exists
Error printing disabled by default due to use of output options --exists, 
--atleast/exact/max-version or no output option at all. Value of 
--print-errors: 0
Error printing disabled
Adding virtual 'pkg-config' package to list of known packages
Scanning directory 'c:/Nos_Programmes/MinGW/mingw-w32/lib/pkgconfig'
Ignoring file '.' in search directory; not a .pc file
Ignoring file '..' in search directory; not a .pc file
File 'gnutls.pc' appears to be a .pc file
Will find package 'gnutls' in file 
'c:/Nos_Programmes/MinGW/mingw-w32/lib/pkgconfig\gnutls.pc'
Ignoring file 'gnutls.pc-original' in search directory; not a .pc file
Ignoring file 'gnutls.pc~' in search directory; not a .pc file
File 'libpng.pc' appears to be a .pc file
Will find package 'libpng' in file 
'c:/Nos_Programmes/MinGW/mingw-w32/lib/pkgconfig\libpng.pc'
File 'libpng16.pc' appears to be a .pc file
Will find package 'libpng16' in file 
'c:/Nos_Programmes/MinGW/mingw-w32/lib/pkgconfig\libpng16.pc'
Scanning directory 'c:/Nos_Programmes/MinGW/mingw-w32/share/pkgconfig'
Ignoring file '.' in search directory; not a .pc file
Ignoring file '..' in search directory; not a .pc file
Looking for package 'gnutls'
Looking for package 'gnutls-uninstalled'
Reading 'gnutls' from file 
'c:/Nos_Programmes/MinGW/mingw-w32/lib/pkgconfig\gnutls.pc'
Parsing package file 'c:/Nos_Programmes/MinGW/mingw-w32/lib/pkgconfig\gnutls.pc'
  line>
  line>
  line>
  line>
  line>
  line>
  line>
  line>
  line>
  line>
  line>
  line>prefix=/mingw
 Variable declaration, 'prefix' overridden with 
'c:/Nos_Programmes/MinGW/mingw-w32'
  line>exec_prefix=/mingw
 Variable declaration, 'exec_prefix' has value '/mingw'
  line>libdir=/mingw/lib
 Variable declaration, 'libdir' has value 
'c:/Nos_Programmes/MinGW/mingw-w32/lib'
  line>includedir=/mingw/include/gnutls
 Variable declaration, 'includedir' has value 
'c:/Nos_Programmes/MinGW/mingw-w32/include/gnutls'
  line>
  line>Name: GnuTLS
  line>Description: Transport Security Layer implementation for the GNU system
  line>URL: http://www.gnutls.org/
  line>Version: 3.3.13
  line>Libs: -L${libdir} -lgnutls
  line>
  line>
  line>Cflags: -I${includedir}
Path position of 'gnutls' is 1
Adding 'gnutls' to list of known packages
--8<----8<----8<----8<----8<--  end  -->8---->8---->8---->8---->8----

>
>> Having or not --with-gnutls=no does not change the outcome as far as
>> error message is concerned. I am a bit confused because in the configure
>> --help, `--without-gnutls' is mentioned instead of `--with-gnutls=no'. I
>> tried `--without-gnutls' and the compilation went through. So this is an 
>> error in the message given by configure.
>
> Using --with-gnutls=no works for me, is it possible you have some
> extra whitespace after one of the backslashes?

Well, I could not reproduce this issue. It seems that I had an
unrecognized option *after* --with-gnutls=no.

>
>> Well, when I am writing the the compilation went through, this is not up
>> to the end, because I got this later on:
>>
>> --8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
>> Loading 
>> c:/Programmes/installation/emacs-install/master/emacs/lisp/emacs-lisp/eldoc.el
>>  (source)...
>> dumped_data_commit: memory exhausted.
>> Enlarge dumped_data[]!
>> mv -f emacs.exe bootstrap-emacs.exe
>> mv: cannot stat `emacs.exe': No such file or directory
>> make[2]: *** [bootstrap-emacs.exe] Error 1
>> --8<----8<----8<----8<----8<--  end  -->8---->8---->8---->8---->8----
>
> Hmm, doesn't happen for me, but you can try enlarging DUMPED_HEAP_SIZE
> in src/w32heap.c

I could compile till the end with a slight increase as follows:

--8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
diff --git a/src/w32heap.c b/src/w32heap.c
index 54de961..507412e 100644
--- a/src/w32heap.c
+++ b/src/w32heap.c
@@ -116,9 +116,9 @@ typedef NTSTATUS (NTAPI *PRTL_HEAP_COMMIT_ROUTINE) (
    to build only the first bootstrap-emacs.exe with the large size,
    and reset that to a lower value afterwards.  */
 #if defined _WIN64 || defined WIDE_EMACS_INT
-# define DUMPED_HEAP_SIZE (21*1024*1024)
+# define DUMPED_HEAP_SIZE (26*1024*1024)
 #else
-# define DUMPED_HEAP_SIZE (12*1024*1024)
+# define DUMPED_HEAP_SIZE (13*1024*1024)
 #endif
--8<----8<----8<----8<----8<--  end  -->8---->8---->8---->8---->8----


I note that that current sizes between narrow and wide are not
consistent, as 21 is not the double of 12.

Anyway, now I have a running Emacs 26, however it seems that it does not
have any gnutls in it, because when I try a message send, I get the
following error message:

--8<----8<----8<----8<----8<-- begin -->8---->8---->8---->8---->8----
Sending via mail...
smtpmail-send-it: Sending failed: Emacs does not support TLS
--8<----8<----8<----8<----8<--  end  -->8---->8---->8---->8---->8----


My configuration is as follows:

   smtpmail-default-smtp-server  smtpmail-smtp-server
   smtpmail-stream-type          starttls
   smtpmail-starttls-credentials ((smtpmail-smtp-server smtpmail-smtp-service 
smtpmail-from-address nil))

   Vincent


---
L'absence de virus dans ce courrier électronique a été vérifiée par le logiciel 
antivirus Avast.
https://www.avast.com/antivirus






reply via email to

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