On Fri, 9 May 2025, Vincent Belaïche wrote:

The compilation nows goes a bit further but fails on:

common/config.cpp:1170:9: error: 'class acommon::OStream' has no member named 
'__printf__'; did you mean 'vprintf'?
1170 |     out.printf("add-%s %s\n", name, buf);
     |         ^~~~~~

It looks like printf is being defined as a macro and that is conflicting with my usage as a method. Undefining the printf macro might help.

MSYS2 is not really supported, however it should work with some modulations. You mighty want to have a look at https://github.com/msys2/MINGW-packages/tree/master/mingw-w64-aspell to see how the official MSYS2 package is built. It looks like there is a patch to fix the printf problem.

I might try building it myself when I have access to a windows machine. But it might take a week or two before I do that.

Thank you anyway for the patch, for some reason I had to apply it manually (« 
git apply » did not work). I attached the log.

I didn't use git to create the patch.



   Vincent.


________________________________
De : Kevin Atkinson <[email protected]>
Envoyé : vendredi 9 mai 2025 05:51
À : Vincent Belaïche <[email protected]>
Cc : [email protected] <[email protected]>
Objet : Re: ASPELL aspell-0.60.8.1 compilation failure on MSYS2 + MINGW64

On Tue, 6 May 2025, Vincent Belaïche wrote:

Hello,
Here is what I get when compiling from sources on MINGW64 (attached config.log 
and compilation log) :

==========================================================
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I./gen -I./gen -I./common 
-I./interfaces/cc/ -I./modules/speller/default/ 
-DLOCALEDIR=/mingw64/share/locale -I/mingw64/include -g -O2 -fno-exceptions -MT 
common/file_util.lo -MD -MP -MF common/.deps/file_util.Tpo -c 
common/file_util.cpp  -DDLL_EXPORT -DPIC -o common/.libs/file_util.o
common/file_util.cpp: In function 'bool acommon::need_dir(ParmString)':
common/file_util.cpp:49:13: error: 'asc_isalpha' was not declared in this 
scope; did you mean 'isalpha'?
  49 |         || (asc_isalpha(file[0]) && file[1] == ':')
     |             ^~~~~~~~~~~
     |             isalpha
common/file_util.cpp:56:3: warning: control reaches end of non-void function 
[-Wreturn-type]
  56 |   }
     |   ^
make[1]: *** [Makefile:1524: common/file_util.lo] Error 1
make[1]: Leaving directory '/c/Users/vincentbelaiche/Downloads/aspell-0.60.8.1'
make: *** [Makefile:1657: all-recursive] Error 1
==========================================================

asc_isalpha is defined in "asc_ctype.hpp" but it is only used if WIN32 is
defined so it's not normally included.  I don't have easy access to a Windows
machine right now but the attached patch should fix your complication problem.

Kevin

Reply via email to