From: "H. Dieter Wilhelm" <dieter@duenenhof-wilhelm.de>
To: Eli Zaretskii <eliz@gnu.org>
Cc: arash@gnu.org, corwin@bru.st, phillip.lord@russet.org.uk,
emacs-devel@gnu.org
Subject: Re: Native compilation on Windows, was Re: Bootstrap Compilation Speed
Date: Wed, 23 Feb 2022 07:44:50 +0100 [thread overview]
Message-ID: <xm46k0dmrsil.fsf@duenenhof-wilhelm.de> (raw)
In-Reply-To: <83v8x7tw4a.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 22 Feb 2022 05:31:49 +0200")
Eli Zaretskii <eliz@gnu.org> writes:
>> From: "H. Dieter Wilhelm" <dieter@duenenhof-wilhelm.de>
>> Cc: Phillip Lord <phillip.lord@russet.org.uk>, arash@gnu.org,
>> corwin@bru.st, emacs-devel@gnu.org
>> Date: Mon, 21 Feb 2022 22:59:07 +0100
>>
>> > Run this in the 'bin/' directory where you have executable programs
>> > and DLLs, and it will show a sorted list of all the DLLs needed by
>> > those programs and DLLs. You will need to recognize and ignore any
>> > system DLLs, such as msvcrt.dll, KERNEL32.dll, USER32.dll, WS2_32.dll
>> > etc. in the list; for the rest, make sure every one of them is in the
>> > same 'bin/' directory. Each time you add some DLL to the 'bin/'
>> > directory, re-run the above command again, because adding DLLs can
>> > potentially add dependencies. Repeat this process until all the DLLs
>> > shown by the command are in the same directory: then you are done.
>>
>> When trying above iterative approach, I just find libgmp and after
>> adding libgmp-10.dll to the folder there are no further dependencies to
>> see!?
>>
>> uidg1626@VSL7V7PW MINGW64 ~/emacs-build/build/emacs-28.0.91/bin
>> $ objdump.exe -p *.exe *.dll |grep "DLL Name"|sort -u
>> DLL Name: ADVAPI32.dll
>> DLL Name: COMCTL32.dll
>> DLL Name: GDI32.dll
>> DLL Name: KERNEL32.dll
>> DLL Name: MPR.dll
>> DLL Name: SHELL32.dll
>> DLL Name: USER32.dll
>> DLL Name: USP10.dll
>> DLL Name: WINMM.dll
>> DLL Name: WINSPOOL.DRV
>> DLL Name: WSOCK32.dll
>> DLL Name: comdlg32.dll
>> DLL Name: libgmp-10.dll
>> DLL Name: msvcrt.dll
>> DLL Name: ole32.dll
>
> The dependency on the optional DLLs is implicit, because Emacs loads
> them dynamically at run time. You need to place the DLLs mentioned in
> dynamic-library-alist defined in w32-win.el in the bin/ directory, and
> _then_ repeat the process. That's because we are talking about the
> dependencies of those dynamically-loaded DLLs.
I see, thank you for this concrete recipe.
I'm a bit baffled, why is in dynamic-library-alist no harfbuzz but
gccjit, gdiplus and shlwapi are there which seem not to be included in
the list of mingw packages mentioned in README.W64?
Emacs-28.0.91
dynamic-library-alist nt/README.W64
(
(xpm "libxpm.dll" "xpm4.dll" "libXpm-nox4.dll") mingw-w64-x86_64-xpm-nox \
(tiff "libtiff-5.dll" "libtiff3.dll" "libtiff.dll") mingw-w64-x86_64-libtiff \
(gif "libgif-7.dll") mingw-w64-x86_64-giflib \
(png "libpng16.dll" "libpng16-16.dll") mingw-w64-x86_64-libpng \
(jpeg "libjpeg-8.dll") mingw-w64-x86_64-libjpeg-turbo \
(svg "librsvg-2-2.dll") mingw-w64-x86_64-librsvg \
(lcms2 "liblcms2-2.dll") mingw-w64-x86_64-lcms2 \
(json "libjansson-4.dll") mingw-w64-x86_64-jansson \
(libxml2 "libxml2-2.dll" "libxml2.dll") mingw-w64-x86_64-libxml2 \
(gnutls "libgnutls-30.dll") mingw-w64-x86_64-gnutls \
(zlib "zlib1.dll" "libz-1.dll") mingw-w64-x86_64-zlib \
mingw-w64-x86_64-harfbuzz
(gdk-pixbuf "libgdk_pixbuf-2.0-0.dll")
(glib "libglib-2.0-0.dll")
(gio "libgio-2.0-0.dll")
(gobject "libgobject-2.0-0.dll")
;; below DLLs are not part of Emacs-28.0.91 for Windows!
(gccjit "libgccjit-0.dll")
(gdiplus "gdiplus.dll")
(shlwapi "shlwapi.dll")
)
Are gdiplus and shlwapi somehow missing in the current Emacs Windows
distribution? (Existing ert tests don't indicate that.)
Dieter
next prev parent reply other threads:[~2022-02-23 6:44 UTC|newest]
Thread overview: 186+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-14 11:36 Bootstrap Compilation Speed phillip.lord
2022-01-14 13:21 ` Eli Zaretskii
2022-01-14 14:16 ` phillip.lord
2022-01-15 9:34 ` Eli Zaretskii
2022-01-15 11:29 ` phillip.lord
2022-01-15 10:29 ` H. Dieter Wilhelm
2022-01-15 11:28 ` phillip.lord
2022-01-15 16:24 ` Corwin Brust
2022-01-15 19:06 ` Native compilation on Windows, was " H. Dieter Wilhelm
2022-01-15 19:15 ` Eli Zaretskii
2022-01-15 19:27 ` H. Dieter Wilhelm
2022-01-16 11:47 ` H. Dieter Wilhelm
2022-01-16 12:13 ` Eli Zaretskii
2022-01-17 9:39 ` Phillip Lord
2022-01-17 12:35 ` Eli Zaretskii
2022-01-17 14:07 ` Phillip Lord
2022-01-17 14:09 ` Eli Zaretskii
2022-01-17 16:25 ` H. Dieter Wilhelm
2022-01-17 18:07 ` Corwin Brust
2022-01-17 18:13 ` Eli Zaretskii
2022-01-17 20:25 ` Phillip Lord
2022-01-17 20:46 ` H. Dieter Wilhelm
2022-01-18 16:38 ` Phillip Lord
2022-01-18 19:37 ` H. Dieter Wilhelm
2022-01-18 19:46 ` Eli Zaretskii
2022-01-18 21:36 ` H. Dieter Wilhelm
2022-01-19 0:02 ` Corwin Brust
2022-01-19 7:45 ` Eli Zaretskii
2022-01-19 14:26 ` Corwin Brust
2022-01-19 14:42 ` Eli Zaretskii
2022-01-19 18:38 ` Phillip Lord
2022-01-19 14:01 ` H. Dieter Wilhelm
2022-01-19 18:59 ` H. Dieter Wilhelm
2022-01-19 20:21 ` Corwin Brust
2022-01-20 7:12 ` H. Dieter Wilhelm
2022-01-20 14:32 ` Corwin Brust
2022-01-20 22:56 ` H. Dieter Wilhelm
2022-01-21 6:58 ` Eli Zaretskii
2022-01-21 11:07 ` H. Dieter Wilhelm
2022-01-21 12:04 ` Eli Zaretskii
2022-01-21 19:22 ` H. Dieter Wilhelm
2022-01-21 19:57 ` Eli Zaretskii
2022-01-22 10:30 ` H. Dieter Wilhelm
2022-01-22 10:44 ` Eli Zaretskii
2022-01-25 19:45 ` H. Dieter Wilhelm
2022-01-25 19:56 ` Eli Zaretskii
2022-01-26 19:49 ` H. Dieter Wilhelm
2022-01-21 12:21 ` Phillip Lord
2022-01-21 12:51 ` H. Dieter Wilhelm
2022-01-21 12:59 ` Eli Zaretskii
2022-01-21 17:48 ` phillip.lord
2022-01-21 19:36 ` Eli Zaretskii
2022-01-21 19:47 ` Corwin Brust
2022-01-21 19:58 ` Eli Zaretskii
2022-01-21 19:58 ` H. Dieter Wilhelm
2022-01-22 12:52 ` Phillip Lord
2022-01-22 12:40 ` Phillip Lord
2022-01-22 12:46 ` Eli Zaretskii
2022-01-22 17:56 ` Phillip Lord
2022-01-21 9:05 ` Corwin Brust
2022-01-22 21:51 ` H. Dieter Wilhelm
2022-01-22 22:52 ` Corwin Brust
2022-01-23 21:16 ` H. Dieter Wilhelm
2022-01-24 3:24 ` Eli Zaretskii
2022-01-24 4:17 ` Corwin Brust
2022-01-24 15:43 ` H. Dieter Wilhelm
2022-01-24 16:56 ` Eli Zaretskii
2022-01-24 18:28 ` H. Dieter Wilhelm
2022-01-24 18:35 ` Eli Zaretskii
[not found] ` <86czkgztcv.fsf@duenenhof-wilhelm.de>
[not found] ` <83zgnkijfo.fsf@gnu.org>
2022-01-25 10:34 ` H. Dieter Wilhelm
2022-01-25 12:32 ` Eli Zaretskii
2022-01-25 13:46 ` H. Dieter Wilhelm
2022-01-25 13:50 ` Eli Zaretskii
2022-01-30 11:57 ` H. Dieter Wilhelm
2022-01-30 14:12 ` Eli Zaretskii
2022-01-30 18:12 ` H. Dieter Wilhelm
2022-01-30 18:34 ` Eli Zaretskii
2022-01-30 21:31 ` H. Dieter Wilhelm
2022-01-25 10:45 ` H. Dieter Wilhelm
2022-01-26 4:40 ` Corwin Brust
2022-01-19 18:33 ` Phillip Lord
2022-01-19 7:28 ` Eli Zaretskii
2022-01-19 13:57 ` H. Dieter Wilhelm
2022-01-19 14:39 ` Eli Zaretskii
2022-01-19 18:48 ` Phillip Lord
2022-01-29 21:32 ` H. Dieter Wilhelm
2022-01-29 22:01 ` Corwin Brust
2022-01-29 22:23 ` H. Dieter Wilhelm
2022-01-30 1:58 ` Corwin Brust
2022-01-30 10:13 ` H. Dieter Wilhelm
2022-01-30 10:19 ` Eli Zaretskii
2022-01-30 21:33 ` Arash Esbati
2022-01-30 22:16 ` Corwin Brust
2022-01-31 10:57 ` Arash Esbati
2022-01-31 15:58 ` H. Dieter Wilhelm
2022-01-31 22:17 ` Corwin Brust
2022-02-01 12:45 ` H. Dieter Wilhelm
2022-02-01 15:28 ` Óscar Fuentes
2022-02-01 19:26 ` H. Dieter Wilhelm
2022-02-01 18:38 ` Arash Esbati
2022-02-01 19:02 ` H. Dieter Wilhelm
2022-02-01 19:10 ` Arash Esbati
2022-02-01 19:27 ` H. Dieter Wilhelm
2022-02-01 21:56 ` H. Dieter Wilhelm
2022-02-03 3:22 ` Corwin Brust
2022-02-03 7:10 ` H. Dieter Wilhelm
2022-02-03 7:47 ` Eli Zaretskii
2022-02-03 13:57 ` Corwin Brust
2022-02-03 16:53 ` Eli Zaretskii
2022-02-03 17:45 ` Corwin Brust
2022-02-02 22:06 ` Phillip Lord
2022-02-02 23:28 ` Corwin Brust
2022-02-04 10:12 ` Phillip Lord
2022-02-02 23:31 ` Corwin Brust
2022-01-31 12:27 ` Eli Zaretskii
2022-02-02 22:04 ` Phillip Lord
2022-02-02 22:22 ` Corwin Brust
2022-02-04 10:05 ` Phillip Lord
2022-02-03 7:10 ` Eli Zaretskii
2022-02-21 21:59 ` H. Dieter Wilhelm
2022-02-22 3:31 ` Eli Zaretskii
2022-02-23 6:44 ` H. Dieter Wilhelm [this message]
2022-02-23 9:32 ` Arash Esbati
2022-02-23 18:30 ` H. Dieter Wilhelm
2022-02-23 12:39 ` Eli Zaretskii
2022-02-27 10:49 ` Acquiring dependencies for Windows builds, was: Native compilation on Windows H. Dieter Wilhelm
2022-02-27 11:07 ` Eli Zaretskii
2022-02-28 21:51 ` H. Dieter Wilhelm
2022-03-01 13:32 ` Eli Zaretskii
2022-03-08 15:52 ` Acquiring dependencies for Windows builds H. Dieter Wilhelm
2022-03-08 16:48 ` Eli Zaretskii
2022-01-31 12:26 ` Native compilation on Windows, was Re: Bootstrap Compilation Speed Eli Zaretskii
2022-01-30 2:37 ` chad
2022-01-30 12:29 ` H. Dieter Wilhelm
2022-02-01 17:17 ` H. Dieter Wilhelm
2022-02-01 17:53 ` Eli Zaretskii
2022-02-01 18:59 ` H. Dieter Wilhelm
2022-02-01 19:23 ` Eli Zaretskii
2022-02-02 10:36 ` Robert Pluim
2022-02-02 11:28 ` H. Dieter Wilhelm
2022-02-02 12:57 ` Eli Zaretskii
2022-02-02 13:00 ` Robert Pluim
2022-02-02 15:23 ` H. Dieter Wilhelm
2022-02-02 16:20 ` Robert Pluim
2022-02-02 17:04 ` Eli Zaretskii
2022-02-02 17:58 ` H. Dieter Wilhelm
2022-02-02 18:18 ` Robert Pluim
2022-02-01 19:00 ` chad
2022-02-01 19:08 ` H. Dieter Wilhelm
2022-02-02 22:12 ` Phillip Lord
2022-02-05 21:46 ` H. Dieter Wilhelm
2022-02-05 23:18 ` Corwin Brust
2022-02-06 15:00 ` Stefan Monnier
2022-02-06 17:21 ` H. Dieter Wilhelm
2022-02-07 12:54 ` Stefan Monnier
2022-02-09 18:23 ` H. Dieter Wilhelm
2022-02-09 19:09 ` Eli Zaretskii
2022-02-09 20:13 ` Stefan Monnier
2022-02-09 23:32 ` Corwin Brust
2022-02-10 10:28 ` Robert Pluim
2022-02-02 21:58 ` Phillip Lord
2022-02-02 22:09 ` Corwin Brust
2022-02-03 6:25 ` H. Dieter Wilhelm
2022-02-03 13:30 ` Stefan Monnier
2022-02-05 21:34 ` H. Dieter Wilhelm
2022-01-30 7:59 ` Eli Zaretskii
2022-01-19 18:46 ` Phillip Lord
2022-01-19 19:25 ` H. Dieter Wilhelm
2022-01-19 18:28 ` Phillip Lord
2022-01-17 9:44 ` Phillip Lord
2022-01-17 16:08 ` Óscar Fuentes
2022-01-17 17:23 ` H. Dieter Wilhelm
2022-01-17 17:46 ` Óscar Fuentes
2022-01-17 19:09 ` H. Dieter Wilhelm
2022-01-17 20:21 ` Phillip Lord
2022-01-18 9:03 ` Robert Pluim
2022-01-18 14:50 ` Eli Zaretskii
2022-01-18 15:09 ` Óscar Fuentes
2022-01-18 16:40 ` Phillip Lord
2022-01-15 22:14 ` phillip.lord
2022-01-15 22:32 ` H. Dieter Wilhelm
2022-01-16 8:54 ` Eli Zaretskii
2022-01-17 9:34 ` Andrea Corallo
2022-01-17 9:56 ` Phillip Lord
2022-01-17 12:37 ` Eli Zaretskii
2022-01-16 14:31 ` H. Dieter Wilhelm
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=xm46k0dmrsil.fsf@duenenhof-wilhelm.de \
--to=dieter@duenenhof-wilhelm.de \
--cc=arash@gnu.org \
--cc=corwin@bru.st \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=phillip.lord@russet.org.uk \
/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.