Then how is msys essentially different than cygwin?
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