typelead / eta

The Eta Programming Language, a dialect of Haskell on the JVM
https://eta-lang.org
BSD 3-Clause "New" or "Revised" License
2.61k stars 141 forks source link

Task :installDependenciesEta FAILED when building statistics-0.15.2.0 from Hackage #985

Open kervinlow opened 4 years ago

kervinlow commented 4 years ago

Task :installDependenciesEta FAILED when building statistics-0.15.2.0 from Hackage

Description

When Eta tries to build and install the dependency, 'statistics:0.15.2.0', it suddenly went into panic while building the library for math-functions-0.3.3.0.

Eta then exited the build process with an exception.

Expected Behavior

Successful build and installation of the statistics-0.15.2.0 package.

Actual Behavior

The dependency build process failed at step 7 when building the library for math-functions-0.3.3.0.

The information provided by Eta is as follows:

[ 6 of 11] Compiling Numeric.Series
[ 7 of 11] Compiling Numeric.SpecFunctions.Compateta: panic! (the 'impossible' happened) (Eta version 0.8.6b5): tcCheckFIType: Unsupported calling convention. ccall unsafe "value erfc"

Please report this as a Eta bug: http://github.com/typelead/eta/issues

statistics-0.15.2.0). See the build log above for details.

Task :installDependenciesEta FAILED :installDependenciesEta (Thread[Task worker for ':',5,main]) completed. Took 3.536 secs.

FAILURE: Build failed with an exception.

Possible Fix

N.A.

Steps to Reproduce

  1. Include 'statistics:0.15.2.0' as a dependency in the Gradle build config file.
  2. Import Statistics.Distribution.Normal in Main.hs
  3. Run gradlew

Context

Trying to import the library to use in my program.

Your Environment

jneira commented 4 years ago

I am afraid the package contains foreign calls to c functions (ccall unsafe...) One way to make the package work with eta is replace the c calls with java ones and upload the patch to the set of patches in eta-hackage https://github.com/typelead/eta-hackage