Testsuite fails at the first fence on Windows

Simon Peyton-Jones simonpj
Thu Oct 10 16:52:53 UTC 2013


Austin, I'd really appreciate it if you could do that.  Currently I cannot validate on Windows.

Thanks

Simon

| -----Original Message-----
| From: mad.one at gmail.com [mailto:mad.one at gmail.com] On Behalf Of Austin
| Seipp
| Sent: 08 October 2013 14:22
| To: Simon Peyton-Jones
| Cc: ghc-devs at haskell.org
| Subject: Re: Testsuite fails at the first fence on Windows
| 
| Hm, it doesn't look like the ctypes import is failing - it looks more
| like the DLL ctypes is trying to find doesn't exist? We seem to use
| ctypes to talk to a windows DLL to set the Code Page for the console.
| 
| I'll look into deplying this new msys2 and fixing it. it's probably
| worth just upgrading the Windows build page to refer to it instead -
| seems like it's much more stable and a lot easier to use (especially
| since it comes with all those handy tools!)
| 
| On Tue, Oct 8, 2013 at 7:58 AM, Simon Peyton-Jones
| <simonpj at microsoft.com> wrote:
| > Dear GHC-dev friends
| >
| >
| >
| > Does anyone feel able help me with this (below)?   I?m a bit
| clueless, and I
| > really think we should have a working Windows build going!
| >
| >
| >
| > It would be so great to have someone who could give the Windows
| build some
| > love.  But meanwhile, just extricating me from my helpless puddle
| would be
| > terrific.
| >
| >
| >
| > Simon
| >
| >
| >
| > From: ghc-devs [mailto:ghc-devs-bounces at haskell.org] On Behalf Of
| Simon
| > Peyton-Jones
| > Sent: 02 October 2013 20:40
| > To: Kyra Alex
| > Cc: ghc-devs at haskell.org
| > Subject: RE: Make spins with THREADS>1 on Win 7
| >
| >
| >
| > Summary: progress on Windows builds, but a show-stopper below that
| I?m sure
| > some ghc-dev can help with.
| >
| >
| >
| >
| >
| > Ah, I've forgotten to mention that the environment variable MSYSTEM
| must be
| > set to MINGW before starting the shell
| >
| >
| >
| > Oh, this is much better.
| >
| > ?         The download from msys2 already includes
| >
| > o   python
| >
| > o   git
| >
| > o   perl
| >
| > o   make
| >
| > o   autoconf
| >
| > o   ssh
| >
| > which saves a bunch of secondary installation goop.
| >
| >
| >
| > ?         Once I set MSYSYSTEM=MINGW, things went much much better.
| GHC
| > built to completion.
| >
| > ?         make ?j works fine!
| >
| > ?         A bizarre 10-second delay when starting a shell has gone
| away
| >
| >
| >
| > So I am very happy.  Two things I?m stuck on.
| >
| >
| >
| > In testsuite I get this:
| >
| >
| >
| > testsuite (master)$ make
| >
| > make -C ./tests all
| >
| > make[1]: Entering directory '/cygdrive/c/code/HEAD/testsuite/tests'
| >
| > python2 ../driver/runtests.py  -e ghc_compiler_always_flags="'-
| fforce-recomp
| > -dcore-lint -dcmm-lint -dno-debug-output -no-user-package-db -
| rtsopts '" -e
| > ghc_debugged=False -e ghc_with_native_codegen=1 -e
| ghc_with_vanilla=1 -e
| > ghc_with_dynamic=0 -e ghc_with_profiling=0 -e
| ghc_with_threaded_rts=1 -e
| > ghc_with_dynamic_rts=0 -e ghc_with_interpreter=1 -e
| ghc_unregisterised=0 -e
| > ghc_dynamic_by_default=False -e ghc_dynamic=False -e ghc_with_smp=1
| -e
| > ghc_with_llvm=0 -e windows=True -e darwin=False -e
| in_tree_compiler=True -e
| > clean_only=False --rootdir=. --config=../config/ghc -e
| > 'config.confdir="../config"' -e
| > 'config.compiler="C:/code/HEAD/inplace/bin/ghc-stage2.exe"' -e
| > 'config.ghc_pkg="C:/code/HEAD/inplace/bin/ghc-pkg.exe"' -e
| > 'config.hp2ps="C:/code/HEAD/inplace/bin/hp2ps.exe"' -e
| > 'config.hpc="C:/code/HEAD/inplace/bin/hpc.exe"' -e 'config.gs="gs"'
| -e
| > 'config.platform="i386-unknown-mingw32"' -e 'config.os="mingw32"' -e
| > 'config.arch="i386"' -e 'config.wordsize="32"' -e
| > 'default_testopts.cleanup=""' -e 'config.timeout=int() or
| config.timeout' -e
| > 'config.timeout_prog="../timeout/install-inplace/bin/timeout.exe"' -
| e
| > 'config.exeext=".exe"' -e 'config.top="C:/code/HEAD/testsuite"'
| > --rootdir=../../libraries/Win32/tests  --
| rootdir=../../libraries/array/tests
| > --rootdir=../../libraries/base/tests  --
| rootdir=../../libraries/binary/tests
| > --rootdir=../../libraries/bytestring/tests
| > --rootdir=../../libraries/containers/tests
| > --rootdir=../../libraries/directory/tests
| > --rootdir=../../libraries/filepath/tests
| > --rootdir=../../libraries/ghc-prim/tests
| > --rootdir=../../libraries/haskeline/tests
| > --rootdir=../../libraries/hpc/tests
| > --rootdir=../../libraries/old-time/tests
| > --rootdir=../../libraries/pretty/tests
| > --rootdir=../../libraries/process/tests
| > --rootdir=../../libraries/random/tests
| > --rootdir=../../libraries/template-haskell/tests
| > --rootdir=../../libraries/vector/tests
| >
| >
| >
| > Traceback (most recent call last):
| >
| >   File "../driver/runtests.py", line 146, in <module>
| >
| >     import ctypes
| >
| >   File "/usr/lib/python2.7/ctypes/__init__.py", line 451, in
| <module>
| >
| >     pythonapi = PyDLL("libpython%d.%d.dll" % _sys.version_info[:2])
| >
| >   File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in
| __init__
| >
| >     self._handle = _dlopen(self._name, mode)
| >
| > OSError: No such file or directory
| >
| > ../mk/test.mk:238: recipe for target 'test' failed
| >
| >
| >
| > And indeed there is no ?ctypes.py?, although there is a directory
| ctypes in
| > c:/fp/Python27/Lib/ctypes, which contains
| >
| > __init__.py
| >
| > __init__.pyc
| >
| > _endian.py
| >
| > _endian.pyc
| >
| > macholib
| >
| > test
| >
| > util.py
| >
| > wintypes.py
| >
| >
| >
| > But runtests.py says ?import ctypes? and that?s what is failing.  I
| don?t
| > know how it worked before.  Can anyone help? I?m so close!
| >
| >
| >
| >
| >
| > Less importantly, but annoyingly, every run of perl, even perl ?
| versoin,
| > gives this:
| >
| >
| >
| > perl --version
| >
| > perl: warning: Setting locale failed.
| >
| > perl: warning: Please check that your locale settings:
| >
| >      LC_ALL = (unset),
| >
| >      LANG = "ENG"
| >
| >     are supported and installed on your system.
| >
| > perl: warning: Falling back to the standard locale ("C").
| >
| >
| >
| > This is perl 5, version 18, subversion 1 (v5.18.1) built for
| > msys-thread-multi-64int
| >
| >
| >
| > It?s non-fatal, but annoying.
| >
| >
| >
| > Thanks
| >
| >
| >
| > Simon
| >
| >
| >
| > From: Kyra Alex [mailto:meurglys3 at gmail.com]
| > Sent: 02 October 2013 07:45
| > To: Simon Peyton-Jones
| > Cc: Edsko de Vries; ghc-devs at haskell.org
| > Subject: Re: Make spins with THREADS>1 on Win 7
| >
| >
| >
| > Ah, I've forgotten to mention that the environment variable MSYSTEM
| must be
| > set to MINGW before starting the shell as is in mingw_shell.bat:
| >
| > set MSYSTEM=MINGW.
| >
| > msys2_shell.bat set it to MSYS thus making it answer "msys".
| >
| >
| >
| > On Wed, Oct 2, 2013 at 1:59 AM, Simon Peyton-Jones
| <simonpj at microsoft.com>
| > wrote:
| >
| > http://sourceforge.net/projects/msys2/ is *much* better than stock
| msys.
| > I've successfully built ghc HEAD quite recently (a month ago or so)
| using
| > it.
| >
| >
| >
| > Interesting! There appears to be about zero documentation, but I
| unpacked
| > the tar ball (which has pre-built binaries), put it in c:/msys32,
| added
| > c:/mys32/bin to my PATH, and tried.
| >
| >
| >
| > Starts well, but two problems.
| >
| >
| >
| > ?         I get lots of this (non-fatally):
| >
| > perl: warning: Setting locale failed.
| >
| > perl: warning: Please check that your locale settings:
| >
| >      LC_ALL = (unset),
| >
| >      LANG = "ENG"
| >
| >     are supported and installed on your system.
| >
| > perl: warning: Falling back to the standard locale ("C").
| >
| >
| >
| > ?         But then I get this error which brings things to a halt:
| >
| > checking for gfind... no
| >
| > checking for find... /usr/bin/find
| >
| > checking for sort... /usr/bin/sort
| >
| > checking for GHC version date... inferred 7.7.20131001
| >
| > checking for ghc... /cygdrive/c/fp/HP-2013.2.0.0/bin/ghc
| >
| > checking version of ghc... 7.6.3
| >
| > GHC path canonicalised to: /cygdrive/c/fp/HP-2013.2.0.0/bin/ghc
| >
| > checking build system type... Invalid configuration `i686-pc-msys':
| system
| > `msys' not recognized
| >
| > configure: error: /bin/sh ./config.sub i686-pc-msys failed
| >
| >
| >
| > Does anyone have ideas for fixing this?   Kyra, how did you get past
| these?
| >
| >
| >
| > Simon
| >
| >
| >
| >
| >
| > From: Kyra Alex [mailto:meurglys3 at gmail.com]
| > Sent: 01 October 2013 19:05
| > To: Simon Peyton-Jones
| > Cc: Edsko de Vries; ghc-devs at haskell.org
| > Subject: Re: Make spins with THREADS>1 on Win 7
| >
| >
| >
| > http://sourceforge.net/projects/msys2/ is *much* better than stock
| msys.
| > I've successfully built ghc HEAD quite recently (a month ago or so)
| using
| > it.
| >
| >
| >
| > On Tue, Oct 1, 2013 at 7:24 PM, Simon Peyton-Jones
| <simonpj at microsoft.com>
| > wrote:
| >
| > Yes; it appears that in the current MSYS release,  'make -jn' goes
| into an
| > infinite loop. This is very depressing.  I do not know a fix.
| >
| > If you google around and find a fix, do tell us.  Currently I have
| to use
| > THREADS=1 all the time
| >
| > Simon
| >
| >
| > | -----Original Message-----
| > | From: ghc-devs [mailto:ghc-devs-bounces at haskell.org] On Behalf Of
| Edsko
| > | de Vries
| > | Sent: 01 October 2013 16:21
| > | To: ghc-devs at haskell.org
| > | Subject: Make spins with THREADS>1 on Win 7
| > |
| > | Hi all,
| > |
| > | Trying to get a build going on Win 7. On both the 32-bit and the
| > | 64-bit version running 'sh validate' stalls at
| > |
| > | "inplace/bin/mkdirhier" utils/touchy/dist/build/tmp//.
| > |
| > | At this point nothing happens, other than that I seem to have 100%
| CPU
| > | usage; 'ps' only shows two make processes, but no further
| > | subprocesses. Not sure what's going on here. Running 'sh validate
| > | --no-clean' after killing both make processes at this point stalls
| at
| > | the same point; running it with THREADS=1 seems to resolve the
| issue.
| > |
| > | Anybody any idea what might be going on?
| > |
| > | Edsko
| > | _______________________________________________
| > | ghc-devs mailing list
| > | ghc-devs at haskell.org
| > | http://www.haskell.org/mailman/listinfo/ghc-devs
| > _______________________________________________
| > ghc-devs mailing list
| > ghc-devs at haskell.org
| > http://www.haskell.org/mailman/listinfo/ghc-devs
| >
| >
| >
| >
| >
| >
| > _______________________________________________
| > ghc-devs mailing list
| > ghc-devs at haskell.org
| > http://www.haskell.org/mailman/listinfo/ghc-devs
| >
| 
| 
| 
| --
| Regards,
| 
| Austin Seipp, Haskell Consultant
| Well-Typed LLP, http://www.well-typed.com/



More information about the ghc-devs mailing list