Silverfrost Forums

Welcome to our forums

Confusing error

20 Sep 2022 1:42 #29362

When I try compiling on the new laptop, I get the following error. I do not get this on the desktop. I use the same files for both compilation environments.

SCC.EXE '.\KML_COORDINATES\KML_COORDINATE.cpp' /List /DEFINE CMASTER /NO_BANNER /DELETE_OBJ_ON_ERROR /ERROR_NUMBERS /UNLIMITED_ERRORS /SILENT /BINARY 'f:\CMASTERF95\RELEASE\WIN32\KML_COORDINATE.obj' [Silverfrost SCC/WIN32 Ver 4.60 Copyright (c) Silverfrost Ltd 2022] *** More than one source file specified 1 ERRORS [<> SCC/WIN32 Ver 4.60] *** Compilation failed

Any ideas?

20 Sep 2022 3:47 #29363

I can't see any obvious error.

Try adding the command line options one at a time.

Does the subfolder KML_COORDINATES exist and does it contain KML_COORDINATE.cpp?

20 Sep 2022 3:51 #29364

Yes, all exists. From the MAKE file, this doesn't work. But of I copy the line as expanded, then paste it into a command window, it works fine.

20 Sep 2022 3:52 #29365

I have also checked to make sure there are no additional characters at the end of the line in the make file.

20 Sep 2022 4:14 #29366

I'm using MAKE from GNUWin32, running the laptop under Windows 11 Home.

20 Sep 2022 5:17 #29367

There is something different about how Windows 11 and MAKE interact, versus Windows 10 (and earlier) and MAKE.

In Windows 11, it appears that while the displayed command is correct when output by MAKE to the screen, when that line is passed to cmd.exe from MAKE, all of the backslashes have been removed.

I was able to capture a command that should have worked, but reported a file it could not find. On screen, the file was perfectly formed. But the error report had no backslashes present. Copy/paste the command from the screen and run it, and it works just as expected.

Not sure what option in MAKE will preserve backslashes, or what CMD option has to be present to insure proper interpretation.

Bill

20 Sep 2022 8:32 #29368

So here is what worked for me.

In all file names, there now exists the pattern '\\' that separates the folders/file. So, 'c:\abcd\defg.txt' now would read 'c:\\abcd\\defg.txt'.

FTN95 does not seem to have a problem with this syntax, but SCC appears to definitely have an issue. Also, WIN11 seems to be picky about the use of double-quotes around a file name (regardless of syntax), while win 10 appears to be insensitive.

However, for any DOS kinds of commands that reference a path as an argument in the MAKE file, the 'subst' function must be invoked. So, the file name above would be made 'digestible' by the syntax $(subst \\,\,c:\\abcd\\defg.txt).

21 Sep 2022 1:54 #29369

OK, scratch all that. Embarrassing, but mostly frustrating.

There was a space in the path name to the make.exe program.

That was it. I had read some on-line posts about this as a problem for other make.exe programs. But not for make.exe from GNUWin32. Not specifically, at least. Having worked on modifying my MAKEFILE to run on both systems (Win10 and Win11) and failing miserably, I was at my wits end.

Now that that is fixed, the make file runs great and rebuilds the software fully.

Point of interest: Under Win10, there IS a space in the path name to the make program. Go figure.

Please login to reply.