Re: ASPELL aspell-0.60.8.1 compilation failure on MSYS2 + MINGW64
Kevin Atkinson <[email protected]> Thu, 15 May 2025 12:35:22 -0400
| Newsgroups | gmane.comp.gnu.aspell.devel |
|---|---|
| Message-ID | <20250515123522.7bf6255a@amd> |
Hi Vincent, On Thu, 15 May 2025 07:46:42 +0000 Vincent Bela=C3=AFche <[email protected]> wrote: > After investigating why so, I found that although I had installed the > French dictionary properly the =C2=AB aspell dict =C2=BB command made emp= ty > output. After compiling from sources I had the same problem. Looking > into this, I found that the dictionary path was hard coded in some > gen/dirs.h generated header as an MSYS2 path that cannot be > understood by the aspell native Windows application. When you compile > on MINGW64 with no --prefix option passed to configure you get this > into gen/dirs.h : >=20 > #define PREFIX "/mingw64" >=20 > This problem can be easily circumvented by passing an absolute > MSWindows path to configure, like this : >=20 > ./configure '--prefix=3Dc:/msys64/mingw64' >=20 > as MSYS unerstands both native mixed path (mixed =3D just replacing \ > by /) and MSYS paths. Thanks for the tip. > However, this could be automated by having somewhere in the > m4/lib-link.m4 or m4/lib-prefix.m4 the appropriate autotools M4 macro > for calling (cygpath -m PREFIX) under the hood when the target is > MINGW. This would certainly greatly help MSYS2/pacman repo > maintainers to compile aspell properly. There is a chance this might already be fixed with newer versions of autotools. If possible try updating the versions of autotools to the latest and see if that helps (the script ./maintainer/autogen might help if you are using the release tarball, although you might have better luck if you checkout the version from git). > The other issue that I had is that Emacs ispell.el needs also to know > where the dictionaries are located because it builds some > auto-completion list to help the user select a dictionary amongst > those available. To get this, Emacs ispell calls =C2=AB aspell -vv =C2=BB= and > expects to find something like >=20 > LIBDIR =3D "c:/msys64/mingw64/lib/aspell-0.60" >=20 > in the output, where "c:/msys64/mingw64" is whatever prefix the user > configured at install. This also does not work, so I did some hack > which I attached. This is not a windows specific issue. The correct way to get this information from aspell is: aspell config dict-dir Kevin