emacs-devel
[Top][All Lists]
Advanced

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

Re: bignum branch


From: Eli Zaretskii
Subject: Re: bignum branch
Date: Fri, 10 Aug 2018 08:45:13 +0300

> From: Andy Moreton <address@hidden>
> Date: Thu, 09 Aug 2018 21:49:46 +0100
> 
> c:/msys64/mingw64/include/gmp.h has this (package version 6.1.2-1):
> 
>     /* Instantiated by configure. */
>     #if ! defined (__GMP_WITHIN_CONFIGURE)
>     #define _LONG_LONG_LIMB 1
>     #define __GMP_LIBGMP_DLL  0
>     #endif
> 
> That is suitable for linking to a static library. If I change it to look
> like this:
> 
>     /* Instantiated by configure. */
>     #if ! defined (__GMP_WITHIN_CONFIGURE)
>     #define _LONG_LONG_LIMB 1
>     #define __GMP_LIBGMP_DLL  1
>     #endif
> 
> After rebuilding emacs, logcount works, and data-tests passes.

I'd actually prefer us to link against GMP statically, at least on
Windows, because GMP usually gets replaced when you install a new
version of GCC.  So linking statically runs a lower risk of a "DLL
hell".  It also makes the Emacs binary self-contained and more easily
movable.

Why is it a problem with linking statically against GMP?  Could it be
tat your libgmp.a is from a different GMP version, i.e. incompatible
with the GMP headers you have installed?  Or maybe some other optional
library depends on GMP and causes conflicts?  If not, I don't
understand why the results should depend on how we linked the library.

Thanks.



reply via email to

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