On Mon, Jan 5, 2009 at 1:37 AM, Lars Nilsson <[email protected]> wrote: > On Sun, Jan 4, 2009 at 7:27 PM, Thomas Chust <[email protected]> wrote: >> Ivan Raikov wrote: >>> [...] >>> I think the problem is that \ in strings needs to be escaped, >>> [...] >> >> Hello, >> >> I don't think so, unless the escaping problem occurs on the Scheme or C >> side of things. >> >> As far as I know, the Windows shell only understands two escape >> characters: The double quote ("), to group things that contain spaces >> together and the caret (^) to escape a single following special character. > > The important part is, I think, that system() is used according to > Felix's first email, presumably in a piece of C code, which means \ in > a string constant should be \\ to be taken literally, instead of > escaping the character following it. The shell / cmd invokation was > supposedly working without a problem. >
The handling of backslashes as escaping characters is not the problem, it seems. If I pass this string (verbatim, just like it is printed here) to system(3): "c:\home\chicken-trunk\bin\csi" -bnq -e "(require-library setup-api)" -e "(import setup-api)" "c:\...some...path...\defstruct.setup" I get an error message that tells me that the program "c:\home\chicken-trunk\bin\csi" -bnq -e "" (sic) can not be found. To reproduce the problem, one can do the following: - checkout the current svn trunk - run "make PLATFORM=mingw PREFIX=c:/home/chicken-trunk DEBUGBUILD=1 bootstrap" (prefix must contain drive letter and use forward slashes) - run "make PLATFORM=mingw PREFIX=c:/home/chicken-trunk DEBUGBUILD=1" - run "make PLATFORM=mingw PREFIX=c:/home/chicken-trunk DEBUGBUILD=1 install" - run "bin\chicken-install defstruct" cheers, felix _______________________________________________ Chicken-users mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/chicken-users
