2013/9/2 Baruch Burstein <[email protected]>
> Then how is msys essentially different than cygwin?
>
> MSYS dll has some peaces of code that translate cygwin-style paths to
windows-style paths for non-msys programs. Also software are patched to
properly work with windows line endings. This is primary differences
between cygwin and msys. Under MSYS you can use native win32 gcc toolchains.
>
> On Mon, Sep 2, 2013 at 5:25 AM, Alexey Pavlov <[email protected]> wrote:
>
>> msys-2.0.dll is renamed and patched cygwin1.dll.
>>
>>
>> 2013/9/2 Baruch Burstein <[email protected]>
>>
>>> What is this msys-2.0.dll? What functions does it supply? How is this
>>> different than cygwin's infamous dll?
>>>
>>>
>>> On Sun, Sep 1, 2013 at 4:35 PM, Ray Donnelly <[email protected]>wrote:
>>>
>>>> MSYS2 is basically Cygwin without the posix-purity stuff going and
>>>> instead a laser sharp focus on interoperability between MSYS2 tools
>>>> and Windows tools. It is "still Windows" but it uses it's own GCC that
>>>> links to (and creates software that links to) msys-2.0.dll that
>>>> provides a more posix-like set of system libraries and environment.
>>>>
>>>> A regular Windows toolchain would not be the same.
>>>>
>>>> On Sun, Sep 1, 2013 at 2:13 PM, Baruch Burstein <[email protected]>
>>>> wrote:
>>>> > If I understand your answer correctly, MSYS(2) is basically just
>>>> "Windows
>>>> > with POSIX tools, directory layout and paths", but it is still
>>>> Windows. If
>>>> > so, hen why does it need it's own toolchain, and what are "MSYS
>>>> binaries"?
>>>> > Wouldn't a regular Windows toolchain with Windows binaries be the
>>>> same?
>>>> >
>>>> >
>>>> > On Sat, Aug 31, 2013 at 5:09 PM, LRN <[email protected]> wrote:
>>>> >>
>>>> >> -----BEGIN PGP SIGNED MESSAGE-----
>>>> >> Hash: SHA1
>>>> >>
>>>> >> On 31.08.2013 17:14, [email protected] wrote:
>>>> >> >
>>>> >> > #1
>>>> >> >
>>>> >> > I'm sure that there is a good reason to have two very similiar
>>>> root type
>>>> >> > directories such as MinGW and msys, but I can't see it. But, I am
>>>> new to
>>>> >> > MinGW. To me two different pseudo root directories.
>>>> >> >
>>>> >> > Can someone explain why the two are necessary and on would not
>>>> suffice?
>>>> >> > Or point me to a document which explains it?
>>>> >> >
>>>> >> > C:\MinGW and
>>>> >> > C:\<inGW\msys\1.0
>>>> >> >
>>>> >> > Also some directory has a link or is a link. /usr?
>>>> >> >
>>>> >>
>>>> >> Welcome to the land of crazy!
>>>> >>
>>>> >> First, some clarifications:
>>>> >>
>>>> >> MinGW is a toolchain (compiler, linker, import libraries for MS
>>>> >> runtimes, headers). It works on W32 and produces pure W32 code, just
>>>> >> like MSVC does. There are two independent projects that make these
>>>> >> toolchains:
>>>> >> * mingw.org - they make mingw.org toolchains (their mailing list is
>>>> >> mingw-users at sourceforge.net)
>>>> >> * mingw-w64 - they make mingw-w64 toolchains (this is mingw-w64
>>>> mailing
>>>> >> list you're writing to).
>>>> >>
>>>> >> I won't try to explain to you which toolchain is better (spoiler:
>>>> >> mingw-w64 is).
>>>> >>
>>>> >> However, you need something to a buildsystem to drive the toolchain
>>>> (run
>>>> >> it with appropriate arguments to compile things and produce
>>>> binaries).
>>>> >> MSVC uses Visual Studio and Microsoft make (nmake, if i remember
>>>> >> correctly?) or some other crazy stuff.
>>>> >>
>>>> >> The decision on which buildsystem to use falls upon package
>>>> developers,
>>>> >> not on mingw developers. Most free software packages are built by GNU
>>>> >> autotools (which produce GNU makefiles, which are interpreted by GNU
>>>> >> make).
>>>> >>
>>>> >> GNU Autotools use POSIX shell to run. GNU Makefiles produced by GNU
>>>> >> Autotools almost always use POSIX shell in some places. And while GNU
>>>> >> Make itself can be built for W32 (and thus may not have any POSIX
>>>> >> dependencies), these makefiles require a POSIX shell, and to produce
>>>> >> them ('configure' the package) you need a POSIX shell.
>>>> >>
>>>> >> MSYS provides a POSIX environment (including a POSIX shell,
>>>> compatible
>>>> >> versions of GNU Autotools, and a POSIXly version of GNU Make) on W32.
>>>> >>
>>>> >> Thus, unless the package you are compiling uses some kind of
>>>> alternative
>>>> >> buildsystem without any POSIX dependencies (CMake, SCons, plain
>>>> >> makefiles with no shell code, <insert your example here>), you need
>>>> both
>>>> >> MinGW and MSYS.
>>>> >>
>>>> >> There are two projects that make MSYS:
>>>> >> * mignw.org - they make the original MSYS (MSYS1)
>>>> >> * some random people on the net (mostly it's just alexey) affiliated
>>>> >> mostly with mingw-w64 project - they make MSYS2
>>>> >>
>>>> >> (also, there's the Cygwin project, which has its own POSIX-only
>>>> >> environment, and its own toolchains, but to produce W32 binaries
>>>> there
>>>> >> you have to cross-compile from Cygwin to W32; if you know what
>>>> >> "cross-compiling" is, and you're ok with it, then stop reading here
>>>> and
>>>> >> go download&install Cygwin, and ask questions on Cygwin mailing
>>>> list).
>>>> >>
>>>> >> Your MSYS is from mingw.org (i can tell from the way directories are
>>>> >> laid out).
>>>> >> I don't know which flavor of MinGW toolchains you're using though.
>>>> >>
>>>> >> At this point you should decide whether you really want to use
>>>> mingw-w64
>>>> >> toolchain or a mingw.org toolchain. If it's mingw.org, then stop
>>>> reading
>>>> >> and go to their mailing list and ask your questions there. If it's
>>>> >> mingw-w64, then read on.
>>>> >>
>>>> >> Since MSYS is a separate, POSIX environment, it has its own stuff - a
>>>> >> special toolchain (i686-pc-msys) that produces MSYS binaries, its own
>>>> >> set of GNU Autotools scripts. Also, all non-portable (POSIX-only)
>>>> stuff
>>>> >> lives in MSYS - such as bash.
>>>> >>
>>>> >> Inside MSYS environment you have a virtual root directory and lots of
>>>> >> POSIXly things. Namely, for compatibility with real POSIX OSes, MSYS
>>>> has
>>>> >> a /usr directory (which is just an alias for the root directory).
>>>> >>
>>>> >> /usr is an alias, not a link. In fact, MSYS doesn't use any symlinks
>>>> at
>>>> >> all. Cygwin has its own symlink emulation (which is not compatible
>>>> with
>>>> >> W32) by default (but you can make it use W32 symlinks on newer
>>>> versions
>>>> >> of Winodws). MSYS2 and Cygwin tend to have more complex directory
>>>> layouts.
>>>> >>
>>>> >> To keep MinGW stuff from conflicting with MSYS stuff, these two are
>>>> kept
>>>> >> in separate roots, and MinGW root is (usually) mounted in MSYS as
>>>> /mingw.
>>>> >> Also, when you run bash, /mingw/bin is put into your PATH before
>>>> >> /usr/bin, unless you set MSYSTEM=MSYS. This means that MinGW stuff
>>>> has
>>>> >> priority over MSYS stuff. This is also the reason why MinGW make (if
>>>> you
>>>> >> have it) is (or should be) re-named, so that you use
>>>> /usr/bin/make.exe,
>>>> >> not /mingw/bin/make.exe, because usually it's the msys-make that you
>>>> >> want. On the other hand, is not renamed, so you'll be using
>>>> >> /mingw/bin/gcc.exe, not /usr/bin/gcc.exe, because you definitely
>>>> don't
>>>> >> want to use msys-gcc!
>>>> >>
>>>> >> When you configure W32 packages, you are advised to use
>>>> --prefix=/mingw,
>>>> >> and install them into /mingw prefix.
>>>> >>
>>>> >> OK, that should be enough. Once you decide which flavor of POSIX
>>>> >> environment to use (MSYS, Cygwin or MSYS2), we'll be able to talk
>>>> details.
>>>> >>
>>>> >> > # 2 Can different users use MinGW. When installed it uses the
>>>> current
>>>> >> > user's name to creaste /home/usr, but, I'd like to have another
>>>> user
>>>> >> > with its own /home/<user-name> directory. ... ls shows the owner of
>>>> >> > files different depending on the person loggged in, but wouldn't
>>>> allow
>>>> >> > me to create a /home/user-name, as I recall. There is no
>>>> /etc/passwd.
>>>> >> > How can I find out about this to gain a good understanding?
>>>> >>
>>>> >> Depends on which environment you are using. In Cygwin and MSYS2 there
>>>> >> is, in fact, /etc/passwd.
>>>> >> In MSYS1, AFAIR, most of these things are stripped out and, for
>>>> example,
>>>> >> it fakes ownership (so you see that files are owned by "you", no
>>>> matter
>>>> >> which user you are logged under).
>>>> >> MSYS1, AFAIR, doesn't bother with permissions checks, so all users
>>>> can
>>>> >> use it freely. Not sure why you can't create /home/user-name.
>>>> >> Cygwin and MSYS2 are more picky. MSYS2 was not tested for running
>>>> under
>>>> >> different users (at least not by me). Don't know about Cygwin, ask on
>>>> >> Cygwin ML.
>>>> >>
>>>> >> - --
>>>> >> O< ascii ribbon - stop html email! - www.asciiribbon.org
>>>> >> -----BEGIN PGP SIGNATURE-----
>>>> >> Version: GnuPG v1.4.11 (MingW32)
>>>> >>
>>>> >> iQEcBAEBAgAGBQJSIfk3AAoJEOs4Jb6SI2CwMBQH/R8I0PU8i+2XV3CygjuCt/jP
>>>> >> MtdT5RktcnKiPDQHPzAgHFd83X4g2ReFUhXs2SqaWxl9bZm+UGObzv209bHTsX9F
>>>> >> /U8uAQJJLQRbQG+w2LisY1sdug82C/uzAcaCtW2Xy0b55YBM3050/M2xukEkN1mC
>>>> >> 5H6dccRzXuHuG1cMSCZ+CZn87qgbMPZ5rRupMhxgnHVfz9ippbb6x1Npfr/eFjKO
>>>> >> Edytc7aRW00GMlGDmRGp+nBc7JHYHT+QF1MZkaMeKDKp/Yx49+InmJuXh2yqTN4N
>>>> >> VnJJQe5XQ27wuqBmxIcAHBTZrixkF848vKf4BlV+1pwAtPW/EtDke1lDbjHqRFk=
>>>> >> =PnNW
>>>> >> -----END PGP SIGNATURE-----
>>>> >>
>>>> >>
>>>> >>
>>>> ------------------------------------------------------------------------------
>>>> >> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012,
>>>> more!
>>>> >> Discover the easy way to master current and previous Microsoft
>>>> >> technologies
>>>> >> and advance your career. Get an incredible 1,500+ hours of
>>>> step-by-step
>>>> >> tutorial videos with LearnDevNow. Subscribe today and save!
>>>> >>
>>>> >>
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
>>>> >> _______________________________________________
>>>> >> Mingw-w64-public mailing list
>>>> >> [email protected]
>>>> >> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>>>> >
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > ˙uʍop-ǝpısdn sı ɹoʇıuoɯ ɹnoʎ 'sıɥʇ pɐǝɹ uɐɔ noʎ ɟı
>>>> >
>>>> >
>>>> ------------------------------------------------------------------------------
>>>> > Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
>>>> > Discover the easy way to master current and previous Microsoft
>>>> technologies
>>>> > and advance your career. Get an incredible 1,500+ hours of
>>>> step-by-step
>>>> > tutorial videos with LearnDevNow. Subscribe today and save!
>>>> >
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
>>>> > _______________________________________________
>>>> > Mingw-w64-public mailing list
>>>> > [email protected]
>>>> > https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>>>> >
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
>>>> Discover the easy way to master current and previous Microsoft
>>>> technologies
>>>> and advance your career. Get an incredible 1,500+ hours of step-by-step
>>>> tutorial videos with LearnDevNow. Subscribe today and save!
>>>>
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
>>>> _______________________________________________
>>>> Mingw-w64-public mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>>>>
>>>
>>>
>>>
>>> --
>>> ˙uʍop-ǝpısdn sı ɹoʇıuoɯ ɹnoʎ 'sıɥʇ pɐǝɹ uɐɔ noʎ ɟı
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
>>> Discover the easy way to master current and previous Microsoft
>>> technologies
>>> and advance your career. Get an incredible 1,500+ hours of step-by-step
>>> tutorial videos with LearnDevNow. Subscribe today and save!
>>>
>>> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
>>> _______________________________________________
>>> Mingw-w64-public mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>>>
>>>
>>
>>
>> ------------------------------------------------------------------------------
>> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
>> Discover the easy way to master current and previous Microsoft
>> technologies
>> and advance your career. Get an incredible 1,500+ hours of step-by-step
>> tutorial videos with LearnDevNow. Subscribe today and save!
>>
>> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
>> _______________________________________________
>> Mingw-w64-public mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>>
>>
>
>
> --
> ˙uʍop-ǝpısdn sı ɹoʇıuoɯ ɹnoʎ 'sıɥʇ pɐǝɹ uɐɔ noʎ ɟı
>
>
> ------------------------------------------------------------------------------
> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> Discover the easy way to master current and previous Microsoft technologies
> and advance your career. Get an incredible 1,500+ hours of step-by-step
> tutorial videos with LearnDevNow. Subscribe today and save!
> http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
> _______________________________________________
> Mingw-w64-public mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>
>
------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58040911&iu=/4140/ostg.clktrk
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public