> From: Keith Marshall <keith****@users*****> > Date: Wed, 22 Jul 2020 02:56:56 +0100 > > > make[3]: Entering directory '/.../gdb-9.2-mingw32-cross-native/gdb' > > python//.deps/py-arch.Po:1: *** multiple target patterns. Stop. > > make[3]: Leaving directory '/.../gdb-9.2-mingw32-cross-native/gdb' > > make[2]: *** [Makefile:1651: all] Error 2 > > make[2]: Leaving directory '/.../gdb-9.2-mingw32-cross-native/gdb' > > make[1]: *** [Makefile:9571: all-gdb] Error 2 > > make[1]: Leaving directory '/.../gdb-9.2-mingw32-cross-native' > > make: *** [Makefile:859: all] Error 2 > > > > What does this mean? > > I decided to sleep on it, and the penny dropped: by using paths output > by the Windows python.exe, with the C: drive prefix in place, and mapped > into the Linux file system through a symbolic link called 'C:', make was > writing dependency files with extraneous colons in path names, which it > then interpreted as (invalid) separators, when it re-read the rules. Right. > > How do I fix it? > > I've kludged around it for now, by manually replacing all instances of > 'C:/' with an alternative symlink name, in the generated dependency > files, then rerunning make from the point of failure. I'll need to give > some more thought to how my win-python script maps path names for header > files, and library references; I'm guessing that the 'C:' should be > preserved in the 'exec-prefix'. I actually don't understand why you needed a Windows file name there. The --with-python= configure switch just tells the build process where to find the header files during compilation and import libraries to link against; the actual Python DLLs will be found at run time via the standard Windows DLL search. What am I missing?