Mike Capp wrote:
> (Replying by email as lists.sourceforge.net seems to be broken at the
> moment, and this is possibly drifting offtopic for the make-w32 list. By
> all means post it if you think anybody else would be interested.)
>>> As you doubtless guessed, I think my objections largely stemmed from
>>> ignorance here. I'd heard that MSYS was purely an interactive shell,
>>> based on the assumption that you'd always be running 'make' from the
>>> supplied rxvt terminal, and the docs that came with it mostly
>>> reinforce that impression. This would make it pretty useless as an
>>> external tool for an editor. If, as seems to be the case, you can
>>> also run the sh.exe directly or specify it as the system shell inside
>>> your makefile, MSYS gets a *lot* more attractive.
>> Please help me correct your confusion. At what point does the
>> documentation need improved?
> In README.rtf, the "STARTING Msys" section reads: "Starting Msys should
> just be a matter of clicking on the MSYS icon on your desktop or Start
> menu. If you have the File Manager window open, you may now click on it
> and have it start also. Doing these presents you with a console window
> within which you may enter commands."
> That's it. There's no mention of sh.exe as a program you can run
> independently of rxvt. Even if someone noticed it in the /bin directory
> and ran it out of curiosity, they'd probably conclude they weren't
> supposed to do that and give up after finding that "nothing worked"
> (because running sh.exe doesn't execute a profile to put /bin in the
> path, and typing './ls' isn't obvious to most Windows people). Also no
> mention of specifying sh.exe as your shell inside a makefile while
> running make from the Windows shell; I haven't tried this yet and don't
> know whether it works, but it's not an unreasonable thing to want to do.
Points taken for consideration.
> More generally:
> MSYS is currently being pitched at people coming FROM a *nix background,
> who already know all this stuff inside out and just want a painless way
> to do it in Windows. This is a large part of the MinGW user base, but
> it's only a part. A lot of people, myself included, came to MinGW with
> little or no *nix experience, because they wanted to see what all the
> fuss was about GCC/Linux/etc without plunging in at the deep end, or
> they were fed up with buggy, bloated, nonconformant, overpriced
> commercial tools. I installed Linux for the first time after using MinGW
> for a while, because the experience had given me confidence that the GCC
> toolchain really *was* as good as it was cracked up to be, and makefiles
> really *weren't* that bad. (And that was after running make through
> COMMAND.COM on Win98; you can imagine what a pleasant surprise I got
> running it through bash on Mandrake.)
Yep. No sooner that you had your coffee in hand it was time to put it
> Now, whether or not you want to consciously support this newbie
> contingent is entirely up to you. They *will* want more hand-holding,
> and they *will* ask dumb questions, and they *are* less likely to
> contribute back in the short term, and there are only so many hours in
> the day.
I think newbie support happens rather well on the mingw-users and
mingw-msys lists. I've never seen complaints or rudeness toward newbies.
> But if you do want to attract the Visual Studio refugees, you need to
> pitch things on the assumption that the reader knows next to nothing
> about Unix. Take the MSYS writeup on http://www.mingw.org, for example:
Visual Studio types tend to want an IDE and usually drift toward DEV-C++
by http://www.bloodshed.net. Your points below are well taken. I shall
look toward incoporating your suggestion into the current documentation.
> "MSYS: A Minimal SYStem to provide POSIX/Bourne configure scripts the
> ability to execute and create a Makefile used by make."
> Huh? Okay, POSIX and Bourne I know, but even with a smattering of
> Linux-literacy I wouldn't recognize a configure script if it broke into
> my front room and ate all my furniture. And I can already run make. So
> why do I need MSYS?
> Maybe something along the lines of:
> Because it provides Unix tools (find, sed etc) which are much more
> powerful than anything available under DOS and interoperate better with
> gcc and make. No more of that "$(subst /,\,$@)" mess. Makefiles using
> these tools will also be easier to port to and from *nix.
> These tools generally work pretty well in makefiles even with
> COMMAND.COM, but they (presumably) work even better with sh.exe, and get
> you even closer to having portable makefiles.
> And if you want to run gcc/make from a Linux-like environment, or try
> out individual commands interactively, there's the rxvt terminal
> emulator to let you do just that. (The /bin executables have some
> problems when run inside a DOS box, even if they're running inside a
> sh.exe session inside a DOS box.)
> - Oops, have to cut this short, it's later than I thought. These are
> just random suggestions; as I said, educating newbies isn't exactly your
> core mission. But it might be a good way to wean Windows folk onto real
> shells if you did feel so inclined.