all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: "Óscar Fuentes" <ofv@wanadoo.es>
Cc: emacs-devel@gnu.org
Subject: Re: GnuTLS for W32
Date: Thu, 05 Jan 2012 01:34:21 -0500	[thread overview]
Message-ID: <E1Rigu5-0004nQ-Il@fencepost.gnu.org> (raw)
In-Reply-To: <87pqezqeph.fsf@wanadoo.es> (message from Óscar Fuentes on Wed, 04 Jan 2012 23:34:50 +0100)

> From: Óscar Fuentes <ofv@wanadoo.es>
> Date: Wed, 04 Jan 2012 23:34:50 +0100
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > You are describing a situation that existed on Windows 9X, it no
> > longer exists on modern machines.  DLLs are either versioned in their
> > names or use the SxS mechanism.
> 
> Before putting too much hope into SxS I encourage you to read the
> wikipedia page about it that you linked on a previous post.

Believe me, I have.  With today's PC ("on the one hand .... but on the
other hand") stance, you can no longer have articles with definitive
opinions.  Articles need to be "balanced", so they will dig any minor
problem to show "objectivity".  Building evidence on that is silly.

All I can say that "it works for me" on no less than 4 different XP
systems used for 4 different purposes, for 7 years, with not a single
problem that I can remember.

> > Take the GnuTLS example: the previous DLL of version 2.x was named
> > libgnutls-26.dll, while the new 3.x one is libgnutls-28.dll.
> 
> The 3.x version is named -28 ?

Yes.  The number comes from the build.  GnuTLS has some weird scheme
for numbering the releases, take a look at their configure script.
But that's not really relevant here.

> > Use your friendly depends.exe program, and you will see that programs
> > that depend on one of them (were linked with its import library) will
> > refuse to load the other.  The same is true of libintl, libiconv, and
> > all the other libraries many Windows ports of GNU software need.
> 
> Appending a number to a name doesn't solve the problem.

It does solve most of it, because programs look only for DLLs they
were linked against.

> A simple experiment: put a libgnutls-26.dll on the system32
> directory. It is shared, right? Now install cygwin or msys, or any of
> multiple standalone applications which are cygwin-based, and put its
> binary directory before system32 on PATH. See it?

People who install both MinGW and MSYS/Cygwin on the same system have
a lot of rope to hang themselves, if they act stupidly.  Putting a
non-system DLL in system32 is one such stupid act; having MSYS on your
PATH is another.  MSYS installer has an option to stay away of PATH (I
think it's the default); if you read the installation instructions
carefully during installation, you won't get into this trouble.  I
know, because I have MSYS installed on one of my machines, and have no
trouble at all, although the amount of overlap in DLLs is
considerable.

In addition, MSYS names most (if not all) of its DLLs differently,
msys-FOO-NN.dll, which also alleviates this problem.

Finally, for the umpteenth time: the default should be to put the DLL
where emacs.exe lives.  Putting it elsewhere is a bonus option for
experts.  So I have no idea why you keep hitting on this subject; it's
a side track, as far as getting GnuTLS and its updates to Emacs is
concerned.

> Another experiment: build an application such as Emacs with VC++ 6 or
> MinGW with the default settings. Now make it to use a dll (GnuTLS, an
> image library...)  compiled with a modern release of VS. Unless such
> library follows a very strict policy about resource handling (and
> possibly other aspects) you are asking for problems.

These problems are theoretical, we never heard about them here.
dynamic-library-alist is carefully constructed to accept only names of
DLLs that we know are safe, which solves at least part of the
potential for trouble.

And again, if someone mixes MinGW with MSVC, they are in trouble
already and need a lot of discipline to avoid shooting themselves in
the foot.

We were talking about the majority of the users, but your examples are
all from the expert land.  I think it's not a coincidence: there
simply are no such problems in the vast majority of installations
nowadays, in practice.

> Think on a user that discovers that sending mail with Emacs just works
> because some other package installed GnuTLS on some directory listed on
> PATH. Time later he decides to uninstall the application and afterwards
> tries to send an e-mail, just to notice to his dismay that it doesn't
> work anymore. Confusing, isn't it?

It isn't confusing if Emacs displays a clear error message.

Again, this use case is for experts; by default the DLL should be with
emacs.exe.  Experts will know how to avoid that; most uninstallers ask
for an explicit permission to remove DLLs from public directories, and
experts know better than blindly clicking OK.

> > Please stop spreading this FUD, you are tripping people like Ted who
> > don't know better into wrong conclusions based on what hurt you (and
> > me) several years ago.  THERE'S NO SUCH PROBLEM ANYMORE!
> 
> Please stop using inflamatory language and offensive assertions.

Sorry, I cannot watch indifferently as people are talked into wrong
conclusions based on information that is several years obsolete.  It
is ridiculous to base design decision for a _future_ feature on
problems that last happened on Windows 2000, a system whose use today
is marginal at best.  Windows XP was released in 2001, and is already
obsolete, so any version prior to it is definitely so.

> I could say that your real-world experience distributing, installing
> and supporting software across heterogenous environments looks quite
> limited, but I'll rather suppose that you were very lucky so far.

You can call 7 years of safe use on 4 different machines luck if you
want.  I call it discipline and following safe practices.



  reply	other threads:[~2012-01-05  6:34 UTC|newest]

Thread overview: 243+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAJU7zaKH0NTE7ko6u24gXy9WupsNw+CAvhMdVudzxpXvsY2vig@mail.gmail.com>
2011-12-31 13:46 ` gnutls for win32 Ted Zlatanov
2012-01-01 11:10   ` Nikos Mavrogiannopoulos
2012-01-01 11:50     ` Eli Zaretskii
2012-01-01 14:13       ` Ted Zlatanov
2012-01-01 16:10         ` Eli Zaretskii
2012-01-01 16:38           ` Ted Zlatanov
2012-01-01 17:05             ` Eli Zaretskii
2012-01-01 21:17               ` Ted Zlatanov
2012-01-01 21:28                 ` Juanma Barranquero
2012-01-01 21:40                 ` Eli Zaretskii
2012-01-01 23:54                   ` GnuTLS for W32 (was: gnutls for win32) Ted Zlatanov
2012-01-02  0:49                     ` Juanma Barranquero
2012-01-02  1:33                       ` GnuTLS for W32 Óscar Fuentes
2012-01-02  1:44                         ` Juanma Barranquero
2012-01-02  2:35                           ` Óscar Fuentes
2012-01-02  2:57                             ` Juanma Barranquero
2012-01-02  3:18                               ` Óscar Fuentes
2012-01-02  4:02                                 ` Juanma Barranquero
2012-01-02 16:16                                   ` Ted Zlatanov
2012-01-02 17:31                                     ` Juanma Barranquero
2012-01-02 17:39                                     ` Eli Zaretskii
2012-01-02 18:51                                       ` Lars Ingebrigtsen
2012-01-02 22:35                                       ` Ted Zlatanov
2012-01-03  0:48                                         ` Óscar Fuentes
2012-01-03  6:37                                           ` Eli Zaretskii
2012-01-03 14:07                                             ` Óscar Fuentes
2012-01-03 17:21                                               ` Eli Zaretskii
2012-01-03 17:48                                                 ` Óscar Fuentes
2012-01-03 18:14                                                   ` Eli Zaretskii
2012-01-03 18:34                                                     ` Óscar Fuentes
2012-01-03 19:38                                                       ` Eli Zaretskii
2012-01-03 19:48                                                         ` Óscar Fuentes
2012-01-03 20:09                                                           ` Eli Zaretskii
2012-01-03 20:25                                                             ` Óscar Fuentes
2012-01-04  6:48                                                             ` Chong Yidong
2012-01-04  8:15                                                               ` Eli Zaretskii
2012-01-04  3:45                                                           ` Stephen J. Turnbull
2012-01-04  5:21                                                             ` Eli Zaretskii
2012-01-04  7:03                                                               ` Stephen J. Turnbull
2012-01-04  8:21                                                                 ` Eli Zaretskii
2012-01-04 11:21                                                                   ` Stephen J. Turnbull
2012-01-04 11:33                                                                     ` Lars Magne Ingebrigtsen
2012-01-04 11:57                                                                       ` Lennart Borgman
2012-01-04 12:06                                                                         ` Lars Magne Ingebrigtsen
2012-01-04 12:37                                                                           ` David Engster
2012-01-04 18:42                                                                             ` Lennart Borgman
2012-01-04 18:19                                                                       ` Eli Zaretskii
2012-01-04 13:57                                                                     ` Eli Zaretskii
2012-01-04 14:14                                                                       ` Óscar Fuentes
2012-01-04 15:05                                                                         ` Juanma Barranquero
2012-01-04 15:42                                                                           ` Óscar Fuentes
2012-01-04 16:29                                                                             ` Ted Zlatanov
2012-01-04 17:00                                                                               ` Juanma Barranquero
2012-01-04 18:48                                                                                 ` Ted Zlatanov
2012-01-05  5:40                                                                                   ` joakim
2012-01-05 15:52                                                                                     ` Óscar Fuentes
2012-01-04 19:21                                                                               ` Óscar Fuentes
2012-01-04 19:45                                                                                 ` Juanma Barranquero
2012-01-04 23:00                                                                                   ` Óscar Fuentes
2012-01-05  0:18                                                                                     ` Juanma Barranquero
2012-01-05  2:00                                                                                       ` Óscar Fuentes
2012-01-05  2:36                                                                                         ` Juanma Barranquero
2012-01-05  6:45                                                                                         ` Eli Zaretskii
2012-01-05  6:41                                                                                     ` Eli Zaretskii
2012-01-05  7:04                                                                                       ` Daniel Colascione
2012-01-05 11:58                                                                                         ` Eli Zaretskii
2012-01-04 20:37                                                                                 ` Ted Zlatanov
2012-01-04 20:41                                                                                   ` Lars Magne Ingebrigtsen
2012-01-04 22:12                                                                                     ` Ted Zlatanov
2012-01-04 22:47                                                                                       ` chad
2012-01-04 23:16                                                                                         ` Ted Zlatanov
2012-01-05  5:36                                                                                           ` Eli Zaretskii
2012-01-05 13:50                                                                                             ` Ted Zlatanov
2012-01-05 14:14                                                                                               ` Eli Zaretskii
2012-01-05 14:50                                                                                               ` Juanma Barranquero
2012-01-05 16:19                                                                                                 ` chad
2012-01-05 20:30                                                                                                   ` Juanma Barranquero
2012-01-05 23:14                                                                                                     ` chad
2012-01-05 23:32                                                                                                       ` Juanma Barranquero
2012-01-05 23:58                                                                                                         ` Richard Riley
2012-01-06  0:05                                                                                                           ` Juanma Barranquero
2012-01-06  7:11                                                                                                           ` Eli Zaretskii
2012-01-06  0:09                                                                                                         ` Juanma Barranquero
2012-01-06  1:05                                                                                                           ` chad
2012-01-06  1:13                                                                                                             ` Juanma Barranquero
2012-01-06  1:24                                                                                                               ` Óscar Fuentes
2012-01-06  1:48                                                                                                                 ` Juanma Barranquero
2012-01-06  2:37                                                                                                                   ` Óscar Fuentes
2012-01-06  3:08                                                                                                                     ` Juanma Barranquero
2012-01-06  3:56                                                                                                                       ` Óscar Fuentes
2012-01-06  4:11                                                                                                                         ` Juanma Barranquero
2012-01-06  5:49                                                                                                                           ` chad
2012-01-06  7:12                                                                                                                             ` Eli Zaretskii
2012-01-06 12:35                                                                                                                               ` Juanma Barranquero
2012-01-07  2:34                                                                                                                                 ` Stephen J. Turnbull
2012-01-06 13:39                                                                                                                             ` Juanma Barranquero
2012-01-07  2:31                                                                                                                         ` Stephen J. Turnbull
2012-01-07  3:37                                                                                                                           ` Óscar Fuentes
2012-01-07  9:30                                                                                                                           ` Juanma Barranquero
2012-01-07 13:37                                                                                                                             ` Ted Zlatanov
2012-01-07 15:10                                                                                                                               ` Juanma Barranquero
2012-01-07  1:36                                                                                                     ` Stephen J. Turnbull
2012-01-07  1:46                                                                                                       ` Juanma Barranquero
2012-01-07  5:07                                                                                                         ` Stephen J. Turnbull
2012-01-07  1:23                                                                                                 ` Stephen J. Turnbull
2012-01-05 15:08                                                                                               ` joakim
2012-01-05 15:37                                                                                               ` Lars Ingebrigtsen
2012-01-05 17:52                                                                                                 ` Ted Zlatanov
2012-01-05 18:29                                                                                                   ` Lars Ingebrigtsen
2012-01-05 20:06                                                                                                     ` Ted Zlatanov
2012-01-06  3:15                                                                                                       ` Lars Magne Ingebrigtsen
2012-01-06  3:37                                                                                                         ` chad
2012-01-05 20:38                                                                                                     ` Juanma Barranquero
2012-01-05 20:36                                                                                                   ` Juanma Barranquero
2012-01-05 20:39                                                                                                     ` Richard Riley
2012-01-05 22:45                                                                                                       ` Juanma Barranquero
2012-01-05 22:35                                                                                                     ` Ted Zlatanov
2012-01-05 22:43                                                                                                       ` Juanma Barranquero
2012-01-05 23:28                                                                                                         ` Ted Zlatanov
2012-01-05 23:38                                                                                                           ` Juanma Barranquero
2012-01-05 23:55                                                                                                             ` Richard Riley
2012-01-05 23:59                                                                                                               ` Juanma Barranquero
2012-01-06  7:10                                                                                                               ` Eli Zaretskii
2012-01-07  2:03                                                                                                               ` Stephen J. Turnbull
2012-01-07  5:40                                                                                                                 ` Richard Riley
2012-01-07 13:35                                                                                                                   ` Ted Zlatanov
2012-01-07 14:51                                                                                                                     ` Richard Riley
2012-01-07 15:12                                                                                                                       ` Juanma Barranquero
2012-01-08 15:33                                                                                                                         ` Ted Zlatanov
2012-01-09  1:04                                                                                                                           ` Stefan Monnier
2012-01-09 14:26                                                                                                                             ` Ted Zlatanov
2012-01-09 14:26                                                                                                                           ` NaCl support for Emacs (was: GnuTLS for W32) Ted Zlatanov
2012-01-09 15:30                                                                                                                             ` NaCl support for Emacs Stefan Monnier
2012-01-09 16:43                                                                                                                               ` Carsten Mattner
2012-01-09 16:59                                                                                                                                 ` Ted Zlatanov
2012-01-09 17:48                                                                                                                                   ` Carsten Mattner
2012-01-09 18:17                                                                                                                                     ` Ted Zlatanov
2012-01-09 18:21                                                                                                                                       ` Carsten Mattner
2012-01-10  1:45                                                                                                                                         ` Ted Zlatanov
2012-01-09 16:53                                                                                                                               ` Ted Zlatanov
2012-01-09 22:23                                                                                                                                 ` Stefan Monnier
2012-01-10  1:06                                                                                                                                   ` Ted Zlatanov
2012-01-10  1:30                                                                                                                                     ` Stefan Monnier
2012-01-10  1:43                                                                                                                                       ` Ted Zlatanov
2012-01-10  1:54                                                                                                                                         ` Richard Riley
2012-01-10  2:34                                                                                                                                           ` libnettle for Emacs (was: NaCl support for Emacs) Ted Zlatanov
2012-01-10  2:43                                                                                                                                             ` libnettle for Emacs Richard Riley
2012-01-10  3:01                                                                                                                                         ` NaCl support " Daniel Colascione
2012-01-10 11:45                                                                                                                                           ` Ted Zlatanov
2012-01-10 12:51                                                                                                                                             ` Ted Zlatanov
2012-01-10  3:21                                                                                                                                         ` Stefan Monnier
2012-01-10 11:54                                                                                                                                           ` Ted Zlatanov
2012-01-10 12:51                                                                                                                                             ` Carsten Mattner
2012-01-10 13:49                                                                                                                                               ` Ted Zlatanov
2012-01-10 16:01                                                                                                                                                 ` Carsten Mattner
2012-01-10 20:01                                                                                                                                                 ` Stefan Monnier
2012-01-09 20:48                                                                                                                               ` joakim
2012-01-09 17:09                                                                                                                             ` NaCl support for Emacs (was: GnuTLS for W32) Eli Zaretskii
2012-01-09 17:26                                                                                                                               ` NaCl support for Emacs Ted Zlatanov
2012-01-09 17:29                                                                                                                               ` NaCl support for Emacs (was: GnuTLS for W32) Eli Zaretskii
2012-01-10  0:57                                                                                                                               ` NaCl support for Emacs Lars Magne Ingebrigtsen
2012-01-10 10:01                                                                                                                             ` NaCl support for Emacs (was: GnuTLS for W32) Eli Zaretskii
2012-01-10 10:46                                                                                                                               ` Carsten Mattner
2012-01-11  5:09                                                                                                                                 ` Stephen J. Turnbull
2012-01-11 10:42                                                                                                                                   ` Carsten Mattner
2012-01-11 12:26                                                                                                                                     ` Stephen J. Turnbull
2012-01-11 12:49                                                                                                                                       ` NaCl support for Emacs Harald Hanche-Olsen
2012-01-11 12:59                                                                                                                                         ` Carsten Mattner
2012-01-11 15:47                                                                                                                                         ` Stephen J. Turnbull
2012-01-11 15:58                                                                                                                                           ` Carsten Mattner
2012-01-11 16:33                                                                                                                                             ` Stephen J. Turnbull
2012-01-11 14:07                                                                                                                                     ` Stefan Monnier
2012-01-11 14:23                                                                                                                                       ` Carsten Mattner
2012-01-11 16:04                                                                                                                                       ` Stephen J. Turnbull
2012-01-11 19:40                                                                                                                                   ` NaCl support for Emacs (was: GnuTLS for W32) Richard Stallman
2012-01-08  7:40                                                                                                                   ` GnuTLS for W32 Stephen J. Turnbull
2012-01-08  8:34                                                                                                                     ` Eli Zaretskii
2012-01-06  0:43                                                                                                             ` Ted Zlatanov
2012-01-06  0:59                                                                                                               ` Juanma Barranquero
2012-01-06 14:08                                                                                                                 ` Ted Zlatanov
2012-01-06 14:35                                                                                                                   ` Juanma Barranquero
2012-01-06 15:26                                                                                                                     ` Ted Zlatanov
2012-01-06 15:47                                                                                                                       ` Juanma Barranquero
2012-01-06 16:50                                                                                                                         ` Ted Zlatanov
2012-01-07 10:24                                                                                                                           ` Chong Yidong
2012-01-07 13:14                                                                                                                             ` Juanma Barranquero
2012-01-07 13:28                                                                                                                             ` Ted Zlatanov
2012-01-07 21:03                                                                                                                     ` Reiner Steib
2012-01-05  5:24                                                                                       ` Eli Zaretskii
2012-01-04 21:23                                                                                 ` Eli Zaretskii
2012-01-04 22:34                                                                                   ` Óscar Fuentes
2012-01-05  6:34                                                                                     ` Eli Zaretskii [this message]
2012-01-05 15:17                                                                                       ` Óscar Fuentes
2012-01-05 18:11                                                                                         ` Eli Zaretskii
2012-01-04 18:10                                                                             ` Eli Zaretskii
2012-01-04 19:42                                                                               ` Óscar Fuentes
2012-01-04 21:31                                                                                 ` Eli Zaretskii
2012-01-04 15:15                                                                         ` Juanma Barranquero
2012-01-04 18:09                                                                         ` Eli Zaretskii
2012-01-04 19:39                                                                           ` Óscar Fuentes
2012-01-04 21:30                                                                             ` Eli Zaretskii
2012-01-04 23:18                                                                               ` Óscar Fuentes
2012-01-05  6:44                                                                                 ` Eli Zaretskii
2012-01-03  7:14                                         ` Eli Zaretskii
2012-01-03 13:06                                           ` Ted Zlatanov
2012-01-03 13:37                                             ` Juanma Barranquero
2012-01-03 14:02                                             ` Eli Zaretskii
2012-01-03 15:00                                               ` Ted Zlatanov
2012-01-03 15:05                                                 ` Juanma Barranquero
2012-01-03 17:29                                                 ` Eli Zaretskii
2012-01-03 18:10                                                   ` Óscar Fuentes
2012-01-03  7:48                                         ` Eli Zaretskii
2012-01-03 13:09                                           ` Ted Zlatanov
2012-01-03 17:06                                             ` Eli Zaretskii
2012-01-04 11:02                                               ` Ted Zlatanov
2012-01-04 12:26                                                 ` joakim
2012-01-04 14:22                                                 ` Óscar Fuentes
2012-01-04 18:03                                                   ` Eli Zaretskii
2012-01-03 14:14                                       ` Jason Rumney
2012-01-02 17:54                                     ` Eli Zaretskii
2012-01-02  8:48                             ` Eli Zaretskii
2012-01-02 10:42                               ` Andreas Schwab
2012-01-02 11:20                                 ` Eli Zaretskii
2012-01-02 12:26                               ` Lars Magne Ingebrigtsen
2012-01-02 12:41                                 ` Eli Zaretskii
2012-01-02 14:03                                   ` Andreas Schwab
2012-01-02 17:34                                     ` Eli Zaretskii
2012-01-02  8:47                     ` GnuTLS for W32 (was: gnutls for win32) Eli Zaretskii
2012-01-02  9:47                       ` GnuTLS for W32 Jason Rumney
2012-01-03 19:51                       ` Lars Magne Ingebrigtsen
2012-01-01 22:32       ` gnutls for lose32 Richard Stallman
2012-01-02  6:55         ` Paul Eggert
2012-01-02 10:46           ` Carsten Mattner
2012-01-02 11:51             ` Juanma Barranquero
2012-01-02 13:09               ` Carsten Mattner
2012-01-02 13:15                 ` Juanma Barranquero
2012-01-02 13:28                 ` Juanma Barranquero
2012-01-02 19:05                   ` Drew Adams
2012-01-02 16:17                 ` Ted Zlatanov
2012-01-02 22:52                 ` Richard Stallman
2012-01-02 19:05               ` Drew Adams
2012-01-02 12:17             ` Paul Eggert
2012-01-02 13:06               ` Carsten Mattner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=E1Rigu5-0004nQ-Il@fencepost.gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=ofv@wanadoo.es \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.