I/O manager: relying solely upon kqueue is not a safe way to go

Ian Lynagh ian at well-typed.com
Tue Mar 19 15:47:13 CET 2013


On Mon, Mar 18, 2013 at 11:28:17AM +0900, Kazu Yamamoto wrote:
> 
> >> "inplace/bin/ghc-stage1" -static  -H32m -O    -package-name
> >> ghc-prim-0.3.1.0 -hide-all-packages -i -ilibraries/ghc-prim/.
> > [...]
> >> libraries/ghc-prim/dist-install/build/GHC/IntWord64.o -dyno
> >> libraries/ghc-prim/dist-install/build/GHC/IntWord64.dyn_o
> >> /var/folders/_c/4n2x0zfx7mx5gk_46pdxn3pm0000gn/T/ghc41160_0/ghc41160_1.split__2.s:unknown:missing
> >> indirect symbols for section (__DATA,__la_sym_ptr2)
> >> make[1]: *** [libraries/ghc-prim/dist-install/build/GHC/IntWord64.o] Error 1
> >> make[1]: *** Deleting file
> >> `libraries/ghc-prim/dist-install/build/GHC/IntWord64.o'
> >> make: *** [all] Error 2
> > 
> > Can you "mkdir tmp", rerun the command with "-keep-tmp-files -tmpdir tmp"
> > and send me the temporary files please?
> 
> This problem happens if a HS file is compiled though "make". If I compiled
> it by copy-pasting "inplace/bin/ghc-stage1", it works. 
> 
> I said that "dtruss" changes the behavior but it appeared that
> "dtruss" does not matter.
> 
> Should I put "-keep-tmp-files -tmpdir tmp" to a makefile? If so,
> please give me a patch.

If you put
  SRC_HC_OPTS += -keep-tmp-files -tmpdir tmp
in mk/build.mk or mk/validate.mk (depending on whether or not you are
validating) then it will be used for all compilations.

Or you can make it more specific, e.g.
  libraries/ghc-prim_dist-install_EXTRA_HC_OPTS += -keep-tmp-files -tmpdir tmp
will use it only for ghc-prim.

Could you also send me your complete mk/build.mk and mk/validate.mk, and
the commands you're using to compile GHC, please?


Thanks
Ian




More information about the ghc-devs mailing list