Opened 10 years ago

Closed 9 years ago

#42079 closed defect (fixed)

[hs-citeproc] configure step fails with "missing dependency: json -any"

Reported by: KurtPfeifle (Kurt Pfeifle) Owned by: neverpanic (Clemens Lang)
Priority: Normal Milestone:
Component: ports Version: 2.2.1
Keywords: Cc:
Port: hs-citeproc

Description

I cannot upgrade hs-citeproc on my Mavericks system. This is the relevant extract of "port log hs-citeproc":

DEBUG: Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_ports_devel_hs-citeproc/hs-citeproc/work/citeproc-hs-0.3.9" && runhaskell Setup configure --prefix=/opt/local --with-compiler=/opt/local/bin/ghc -v --enable-library-profiling --with-gcc=/usr/bin/clang'
DEBUG: Executing command line:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_ports_devel_hs-citeproc/hs-citeproc/work/citeproc-hs-0.3.9" && runhaskell Setup configure --prefix=/opt/local --with-compiler=/opt/local/bin/ghc -v --enable-library-profiling --with-gcc=/usr/bin/clang 
Configuring citeproc-hs-0.3.9...
Setup: At least the following dependencies are missing:
json -any
Command failed:  cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_ports_devel_hs-citeproc/hs-citeproc/work/citeproc-hs-0.3.9" && runhaskell Setup configure --prefix=/opt/local --with-compiler=/opt/local/bin/ghc -v --enable-library-profiling --with-gcc=/usr/bin/clang 
Exit code: 1
Error: org.macports.configure for port hs-citeproc returned: configure failure: command execution failed
DEBUG: Error code: NONE
DEBUG: Backtrace: configure failure: command execution failed
Warning: targets not executed for hs-citeproc: org.macports.install org.macports.configure org.macports.build org.macports.destroot

Attachments (6)

main.log (34.6 KB) - added by KurtPfeifle (Kurt Pfeifle) 10 years ago.
main.log (after "port clean hs-citeproc && port upgrade hs-citeproc"
ghc-pkg--list.txt (4.9 KB) - added by KurtPfeifle (Kurt Pfeifle) 10 years ago.
Output of "ghc-pkg list"
ghc-pkg--check.txt (79.9 KB) - added by KurtPfeifle (Kurt Pfeifle) 10 years ago.
Output of "ghc-pkg check"
ghc-pkg--user-list.txt (3.3 KB) - added by KurtPfeifle (Kurt Pfeifle) 10 years ago.
Output of "ghc-pkg --user list"
ghc-pkg--global-list.txt (1.6 KB) - added by KurtPfeifle (Kurt Pfeifle) 10 years ago.
Output of "ghc-pkg --global list"
ghc-pkg--check-new.txt (10.1 KB) - added by KurtPfeifle (Kurt Pfeifle) 10 years ago.
Output of "ghc-pkg check" after moving away ~/.cabal and ~/.ghc

Download all attachments as: .zip

Change History (16)

comment:1 Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Forgot to mention:

kp@mb: >  port installed hs-json
The following ports are currently installed:
  hs-json @0.7_3 (active)

comment:2 Changed 10 years ago by mf2k (Frank Schima)

Owner: changed from macports-tickets@… to cal@…
Port: hs-citeproc added

In the future, please fill in the Port field and Cc the port maintainers (port info --maintainers hs-citeproc).

comment:3 in reply to:  2 Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Replying to macsforever2000@…:

In the future, please fill in the Port field and Cc the port maintainers (port info --maintainers hs-citeproc).

Sorry -- forgotten to fill the fields...

Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Attachment: main.log added

main.log (after "port clean hs-citeproc && port upgrade hs-citeproc"

comment:4 Changed 10 years ago by neverpanic (Clemens Lang)

Same here, please run sudo ghc-pkg recache and provide the output of ghc-pkg list and ghc-pkg check.

Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Attachment: ghc-pkg--list.txt added

Output of "ghc-pkg list"

Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Attachment: ghc-pkg--check.txt added

Output of "ghc-pkg check"

comment:5 Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Ok, these logs proof there's a problem with my installed packages. But they leave me clueless about how to fix it. (I have no idea about Haskell/ghc/cabal packages.)

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

It seems there is a number of problems with your state of Haskell packages:

  • There are lots of older versions of some packages still installed, e.g. you have five different versions of http-conduit, only one of which has ever been in MacPorts
  • Thus, you must have used cabal or some other method to install Haskell packages. When you do this, cabal will re-use Haskell packages installed by MacPorts, but those might be removed by MacPorts breaking your dependency tree.
  • MacPorts Haskell packages had a bug where they wouldn't be correctly uninstalled and unregistered if there were dependents registered, leaving outdated package registrations in place. While the problem has since been fixed, it seems some of those leftovers are still in place on your system.
  • The last two points lead to all the missing files and missing dependencies in the output of ghc-pkg check.

You should avoid using cabal to install Haskell packages and use the MacPorts port where possible. MacPorts Haskell package upgrades might break packages installed manually using cabal.

It seems a lot of the broken packages are in your user tree. Please attach the output of ghc-pkg --global list and ghc-pkg --global check so I can check whether you need to modify any packages installed system-wide or whether the problems are caused by your user packages only.

comment:7 Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Indeed, I started to "cabal install" the most recent version of pandoc... but only after the port upgrade pandoc turned out to be b0rken for me.

I appreciate your help. I'll get rid of all the cabal-installed stuff if it helps me getting the MacPorts-provided packages into the right order.

comment:8 Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

I did run the command "ghc-pkg --global check 2> ghc-pkg--global-check.txt".

However, the output is identical to the one which is contained in previously attached file "ghc-pkg--check.txt" (I checked using "md5sum"...).

The output of "ghc-pkg --user check" is also exactly identical.

So the "--global/--user" switches don't seem to have any effect on "ghc-pgk check"...

Outputs of "ghc-pkg --user list" and "ghc-pkg --global list" are different, though. I'll attach them.

Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Attachment: ghc-pkg--user-list.txt added

Output of "ghc-pkg --user list"

Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Attachment: ghc-pkg--global-list.txt added

Output of "ghc-pkg --global list"

comment:9 Changed 10 years ago by neverpanic (Clemens Lang)

OK, if ghc-pkg check doesn't support --global, can you please try sudo ghc-pkg check or if that doesn't help, move /Users/kurtpfeifle/.ghc and /Users/kurtpfeifle/.cabal aside, run sudo ghc-pkg recache and run ghc-pkg check again?

Changed 10 years ago by KurtPfeifle (Kurt Pfeifle)

Attachment: ghc-pkg--check-new.txt added

Output of "ghc-pkg check" after moving away ~/.cabal and ~/.ghc

comment:10 Changed 9 years ago by neverpanic (Clemens Lang)

Resolution: fixed
Status: newclosed

Assuming this is no longer a problem since the buildbot has a current version of hs-citeproc, and we've switched to a less error-prone package registration mechanism.

Note: See TracTickets for help on using tickets.