Skip to content

Hello "schedule: re-entered unsafely."

After compiling the following program on ARM:

main = putStrLn "Hello, world!"

using ghc hello.hs I receive the following error when running the compiled code:

$ ./hello
hello: schedule: re-entered unsafely.
   Perhaps a 'foreign import unsafe' should be 'safe'?

I'm trying to get GHC running on my Raspberry Pi 2, running Raspbian Jessie Light, which can be found here:

https://www.raspberrypi.org/downloads/raspbian/

I was following the instructions for installing the compiler on a freshly flashed RPI2 from here:

http://statusfailed.com/blog/2015/11/29/haskell-and-servant-on-scaleway-arm-servers.html

This was using the Linux ARMv7 binaries:

https://www.haskell.org/ghc/download_ghc_7_10_3#linux_armv7 https://www.haskell.org/ghc/download_ghc_7_10_2#linux_armv7

Additionally trying to upgrade cabal with cabal install cabal-install seems to hang forever. It gets stuck in various Setup.hs files and doesn't seem to progress. No CPU is taken up using this.

Some summary information:

  • llvm 3.5
  • gcc 4.9.2
  • original GHC from Raspbian is 7.6.3
  • cabal-install from Raspbian is 1.20.0.3
  • cabal is 1.20.0.2
  • This same problem affects both 7.10.2, and 7.10.3
Trac metadata
Trac field Value
Version 7.10.2
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler
Test case
Differential revisions
BlockedBy
Related #951 (closed)
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information