Does that C:/msys64 prefix contain both the 32-bit MinGW-w64/MSYS2 and
64-bit MinGW-w64/MSYS2 that can be installed with the MSYS2 pacman
installer?  And assuming the answer is yes, is there a different
extension to that prefix for the 32-bit case versus the 64-bit case,
and is 32-bit and 64-bit MinGW-w64/MSYS2 _all_ that the overall
C:/msys64 prefix contains?


C:/msys64 is "mounted" (ala msys-2.0.dll) as "/" and so it also contains
/usr, /lib, /etc for the bash/posix "msys".   It is also host to the .bat
files that initiate
the bash shell.
greg@linux-gc09:/home/bld/gdl> ls -l /c/msys64
total 28398
-rwxrwxrwx 2 root root       68 Nov  7  2014 autorebase.bat
-rwxrwxrwx 2 root root      974 Nov 15  2014 components.xml
drwxrwxrwx 1 root root        0 Nov 15  2014 dev
-rwxrwxrwx 1 root root      541 Apr  7 00:54 dir
drwxrwxrwx 1 root root     8192 Jul 17 17:36 etc
drwxrwxrwx 1 root root     4096 Feb  2 14:06 home
-rwxrwxrwx 2 root root     7470 Jan 25 14:02 InstallationLog.txt
-rwxrwxrwx 2 root root  1661045 Nov 15  2014 maintenancetool.dat
-rwxrwxrwx 2 root root 27323952 Nov 15  2014 maintenancetool.exe
-rwxrwxrwx 2 root root     3515 Jan 25 14:01 maintenancetool.ini
drwxrwxrwx 1 root root     4096 Jul 14 12:17 mingw32
-rwxrwxrwx 2 root root     1265 Apr 26 03:32 mingw32_shell.bat
drwxrwxrwx 1 root root     4096 Apr  7 00:59 mingw64
-rwxrwxrwx 2 root root     1265 Apr 26 03:32 mingw64_shell.bat
-rwxrwxrwx 1 root root    25758 Apr 26 03:32 msys2.ico
-rwxrwxrwx 2 root root     1258 Jul 17 14:49 msys2_shell.bat
-rwxrwxrwx 1 root root      362 Jan 25 14:01 network.xml
drwxrwxrwx 1 root root        0 Apr  5 13:17 opt
lrwxrwxrwx 1 root root      116 Jan 31 12:03 opt32 ->
/c/.NTFS-3G/D:/mingw/opt32-psxdw2/
lrwxrwxrwx 1 root root      116 Jan 31 11:56 opt64 ->
/c/.NTFS-3G/D:/mingw/opt64-psxseh/
drwxrwxrwx 1 root root        0 Apr  7 00:59 $Recycle.Bin
drwxrwxrwx 1 root root        0 Jan  5  2015 retired
lrwxrwxrwx 1 root root       80 Apr 26 03:32 tmp ->
/c/.NTFS-3G/D:/temp/msys2
drwxrwxrwx 1 root root     4096 Jul 14 14:57 usr
lrwxrwxrwx 1 root root       68 Jan 18 03:14 usrbin -> /c/usr/bin
drwxrwxrwx 1 root root     4096 Nov 15  2014 var
-rwxrwxrwx 1 root root        0 Mar 27 22:33 x01c_.txt

The directory links, opt32 and op64, shown above are NTFS directory links
which
Linux can't negotiate.  The other directory link, usrbin, is an NTFS
junction, which behaves much more like a simple directory in windows.
 opt32 and opt64 hold a repository of my libraries, augmenting the standard
collections in /mingw32/ or /mingw64/:

greg@linux-gc09:/c/msys64> ls /d/mingw/opt32-psxdw2/
bin  cmake  include  lib  share  testfile.x

The three .bat files are nearly identical except for the MSYSTEM setting
which will be used in /etc/profile to set up the environment:
greg@linux-gc09:/home/bld/gdl> diff /c/msys64/msys2_shell.bat
/c/msys64/mingw32_shell.bat
25c25
< set MSYSTEM=MSYS
---
> set MSYSTEM=MINGW32
27c27
< set MSYS=winsymlinks:nativestrict
---
> rem set MSYS=winsymlinks:nativestrict
44c44
< start console -t "MSys2" -r "%*"
---
> start console -t "MinGW" -r "%*"


Please clarify the various shells and their sources.  For example,
could you confirm that the cygwin shell comes from your Cygwin platform
installation, and the mingw.org/msys-1 shell from your MinGW/MSYS
installation?

There are similar bat scripts that start up cygwin64, in the cygwin
location,
and for msys-1 (mingw.org) in its location.  Each of these is executed from
a desktop link associated with a command shell, or via an entry in the
"start menu".

I don't think cygwin1.dll has anything to do with MSYS2.  So I assume
> you meant cygwin1.dll for Cygwin, but please confirm that.
>
>
> Confirmed

>
> < etc. anything you think you need>
>

That last line concerns me since the primary motivation for these
comprehensive tests is to help other Cygwin, MinGW/MSYS, and
MinGW-w64/MSYS2 users with PLplot.  So you should establish the firm


  The biggest messes are usually coming from the underlying windows system,
I've had troubles because the env variables "SHELL" and "PATH_SEPARATOR"
have been set by installations without my knowledge, blocking proper
operation.


> Also, in the past you have said your MinGW-w64/MSYS2 installation
> provides 3 shells.  Was that a mistake, and the MSYS one you referred
> to was actually from your MinGW/MSYS installation, and the two others
> from your separate installs of 32-bit MinGW-w64/MSYS2 and 64-bit
> MinGW-w64/MSYS2?
>
> except for the MSYSTEM environment variable (MSYS || MINGW32 || MINGW64)
they are the same.  I.e. start with MSYS shell (like a cygwin shell) then
add
the compiler tree, with accompanied libs, to the front of the $PATH.  And
adjust other variables (CFLAGS, LDFLAGS) accordingly.

>
>> or, when the MSYS link is used,
>>
>> greg@Homerw7 MSYS ~
>> $ echo $PATH
>>
>> /usr/local/bin:/usr/bin:/bin:/opt64/bin:/c/Windows:/c/Windows/system32:/c/Windows/system32/Wbem:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
>>
>> and finally
>>
>> greg@Homerw7 MINGW64 ~
>
> $ echo $PATH
>>
>> /mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/Windows:/c/Windows/system32:/c/Windows/system32/Wbem:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
>>
>> in cygwin64
>>
>> This table is, of course, completely separated from the mounts in msys2
 but co-existing in Windows 7 without clashes.

> greg@Homerw7 ~
>> $ mount
>> E:/MinGW/sources on /sources type ntfs (binary)
>> E:/cygwin64/bin on /usr/bin type ntfs (binary,auto)
>> E:/cygwin64/lib on /usr/lib type ntfs (binary,auto)
>> E:/cygwin64 on / type ntfs (binary,auto)
>> C: on /c type ntfs (binary,posix=0,user,noumount,auto)
>> D: on /d type ntfs (binary,posix=0,user,noumount,auto)
>> E: on /e type ntfs (binary,posix=0,user,noumount,auto)
>> F: on /f type ntfs (binary,posix=0,user,noumount,auto)
>>
>> $  echo $PATH
>>
>> /opt/local/bin:/usr/local/bin:/usr/bin:/bin:/c/Windows/system32:/c/Windows:/c/Windows/Wbem
>>
>>

>
>> ===========================================================
>>   How 32- and 64-bit programs can run.
>>
>
> If my working hypothesis above is correct that the shells
> actually present on your system are
>
> 1. The Cygwin shell you get from 64-bit Cygwin installation.
>
> 2. The MSYS shell you get from MinGW/MSYS installation.
>
> 3. The MSYS2 shell you get from 32-bit MinGW-w64/MSYS2 installation.
>
> 4. The MSYS2 shell you get from 64-bit MinGW-w64/MSYS2 installation.
>
> 3. The MSYS2 shell you get from MSYS2 installation.
 Mine happens to be 64-bit but there is a 32-bit version, which it may as
well have been - its an irrelevant detail because plplot will not be built
for msys, but for MingW.
shell #2 can also host a Mingw-w64: in fact mine is one. and shell#2 can
also be
configured to host an x86_64- compiler version.  MSYS2 can also be set up
to operate the mingw of shell#2.

  Although you can call it a different shell, MINGW32 or MINGW64 is
identical to MSYS2 with one extra directory inserted into the path.


greg@linux-gc09:/c/msys64> ls usr/lib

automode.o          gettext        libbfd.a      libltdl.a
libpython2.7.dll.a  libyasm.a  ssh
awk                 gio            libbinmode.a  libltdl.dll.a
libresolv.a         man-db     tar
binmode.o           git-core       libc.a        libm.a          librt.a
          openssl    terminfo
cpp.exe             gnupg          libdl.a       libmagic.dll.a
 libtextmode.a       p11-kit    textmode.o
crt0.o              groff          libfl.a       libmsys-2.0.a
libtextreadmode.a   perl5      textreadmode.o
default-manifest.o  guile          libfl_pic.a   libopcodes.a    libtz.a
          pkcs11     tmpfiles.d
gawk                help2man       libg.a        libopts.a
libunrar.dll.a      pkgconfig  w32api
gcc                 libalpm.a      libgmon.a     libopts.dll.a   libutil.a
          python2.7
gcrt0.o             libautomode.a  libiberty.a   libpthread.a    liby.a
         python3.4

greg@linux-gc09:/c/msys64> ls usr/lib/gcc
x86_64-pc-msys
greg@linux-gc09:/c/msys64> ls /mingw32/lib/gcc
ls: cannot access /mingw32/lib/gcc: No such file or directory
greg@linux-gc09:/c/msys64> ls mingw32/lib/gcc
i686-w64-mingw32
greg@linux-gc09:/c/msys64> ls mingw64/lib/gcc
x86_64-w64-mingw32
greg@linux-gc09:/c/msys64>


Add to that the packages


greg@linux-gc09:/c/msys64> ls mingw64

bin  bsd-xdr-mingw64  doc  etc  include  lib
  locale  share  ssl  x86_64-w64-mingw32

greg@linux-gc09:/c/msys64> ls mingw32

bin  cmake.org.html  etc  i686-w64-mingw32
  include  lib  share  ssl  var


>
------------------------------------------------------------------------------
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to