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

Reply via email to