Opened 3 years ago

Closed 3 years ago

#47121 closed defect (fixed)

hs-language-c: "runhaskell" command fails during build

Reported by: twilsonco@… Owned by: neverpanic (Clemens Lang)
Priority: Normal Milestone:
Component: ports Version: 2.3.3
Keywords: Cc:
Port: hs-language-c

Description

See attached log. During build, the command "runhaskell" exits with status 1. Also many warnings of missing directories during ghc check even though ghc (7.8.3_2) is installed and active.

Attachments (1)

main.log (30.9 KB) - added by twilsonco@… 3 years ago.

Download all attachments as: .zip

Change History (9)

Changed 3 years ago by twilsonco@…

comment:1 Changed 3 years ago by twilsonco@…

Sorry for the lack of information in the ticket.

port is hs-language-c @0.4.2_5 (devel, haskell)

error is "Error: Processing of port hsshellscript failed", and

":info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_hs-language-c/hs-language-c/work/language-c-0.4.2" && runhaskell Setup build -v" in the log file.

Thanks,

Tim

comment:2 Changed 3 years ago by ryandesign (Ryan Schmidt)

  • Keywords build install fail removed
  • Summary changed from "runhaskell" command fails during build to hs-language-c: "runhaskell" command fails during build

comment:3 Changed 3 years ago by neverpanic (Clemens Lang)

  • Owner changed from macports-tickets@… to cal@…
  • Status changed from new to assigned

The warnings from ghc-check are not causing the failure. The problem likely is that the version of hs-language-c is too old for the current GHC and needs to be updated.

It should be as simple as

  • locating the Portfile (port file hs-language-c)
  • making a backup copy for later diff (cp Portfile{,.orig})
  • modifying the version number at the end of the haskell.setup line and removing the revision line
  • running sudo port -v checksum in the directory (which will fail and print the correct checksums)
  • updating the checksums in the Portfile
  • running a test build (sudo port -vt destroot)
  • creating a patch (diff -u Portfile{.orig,}) and attaching it here

Can you do that?

comment:4 Changed 3 years ago by twilsonco@…

I'm confused. hs-language-c is not a dependency of ghc, so why would changing the version number of hs-language-c help? Shouldn't I instead change hs-language-c's ghc dependency to require the current version of ghc?

Also, to what version would I be changing hs-language-c to? And if I changed the version, wouldn't I also need to provide the updated port so that the newer version can actually be installed?

I'd be happy to help with Macports since I love it and depend on it so heavily, but I need a little more information.

Thanks

comment:5 Changed 3 years ago by twilsonco@…

Oh, because in the error: ":info:build Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_hs-language-c/hs-language-c/work/language-c-0.4.2" && runhaskell Setup build -v"

It's looking for .../language-c-0.4.2, that is the version number I should change to (by simply removing the revision line). Then follow the rest of your instructions. I'll try and if it builds then I'll upload the patch.

Thanks

comment:6 Changed 3 years ago by neverpanic (Clemens Lang)

GHC has been updated to the latest version, but hs-language-c has not. I'm proposing to update hs-language-c to the latest available version. Run port gohome hs-language-c to open its homepage which has a list of versions. If you locally modify your hs-language-c Portfile you can run a test build. If it builds, I can commit this patch to make it available to everybody.

comment:7 Changed 3 years ago by twilsonco@…

Ahh. That makes more sense :) You're a wealth of knowledge.

Changed to most recent version (0.4.7), updated checksums, and test built gave no errors. Running sudo port install installed successfully. (Unfortunately, the port hsshellscript, which I was trying to install in the first place, has its own errors that are different from those encountered here. Maybe I can help with that one too!)

Thanks for the help!

Here's the diff with {Portfile, Portfile.bak} as the arguments:

--- ./Portfile	2015-03-12 11:07:58.000000000 -0600
+++ ./Portfile.bak	2015-03-12 10:33:48.000000000 -0600
@@ -4,9 +4,10 @@
 PortSystem          1.0
 PortGroup           haskell 1.0
 
-haskell.setup       language-c 0.4.7
-checksums           rmd160  fed78e53d478df1e93aa95fc7299a4c83f3d887b \
-                    sha256  5f6dc9d86b1f88dec1800e1a4fc43aa52f85fe4bb865ba268aca34b399a512e4
+haskell.setup       language-c 0.4.2
+revision            5
+checksums           rmd160  9c20128ec44585bbb3a7079ba78b802c173dabb9 \
+                    sha256  6384cf03a00008b65ad126c2582699b3de52de594468386d2c79cf63c926ee1e
 
 license             BSD
 maintainers         nomaintainer

And another diff with the arguments reversed, just for the hell of it:

--- ./Portfile.bak	2015-03-12 10:33:48.000000000 -0600
+++ ./Portfile	2015-03-12 11:07:58.000000000 -0600
@@ -4,10 +4,9 @@
 PortSystem          1.0
 PortGroup           haskell 1.0
 
-haskell.setup       language-c 0.4.2
-revision            5
-checksums           rmd160  9c20128ec44585bbb3a7079ba78b802c173dabb9 \
-                    sha256  6384cf03a00008b65ad126c2582699b3de52de594468386d2c79cf63c926ee1e
+haskell.setup       language-c 0.4.7
+checksums           rmd160  fed78e53d478df1e93aa95fc7299a4c83f3d887b \
+                    sha256  5f6dc9d86b1f88dec1800e1a4fc43aa52f85fe4bb865ba268aca34b399a512e4
 
 license             BSD
 maintainers         nomaintainer

comment:8 Changed 3 years ago by neverpanic (Clemens Lang)

  • Resolution set to fixed
  • Status changed from assigned to closed

Thanks, committed in r133828.

Note: See TracTickets for help on using tickets.