Upgrading himerge from 0.15 to 0.16.1 fails with following error: Linking setup ... Configuring himerge-0.16.1... setup: At least the following dependencies are missing: gtk -any, mozembed -any, glib -any * * ERROR: app-portage/himerge-0.16.1 failed. * Call stack: * ebuild.sh, line 46: Called src_compile * environment, line 2771: Called haskell-cabal_src_compile * environment, line 2162: Called cabal_src_compile * environment, line 564: Called cabal-configure * environment, line 495: Called die * The specific snippet of code: * ./setup configure --ghc --prefix=/usr --with-compiler="$(ghc-getghc)" --with-hc-pkg="$(ghc-getghcpkg)" --prefix=/usr --libdir=/usr/$(get_libdir) --libsubdir=${P}/ghc-$(ghc-version) --datadir=/usr/share/ --datasubdir=${P}/ghc-$(ghc-version) ${cabalconf} ${CABAL_CONFIGURE_FLAGS} "$@" || diefunc "$FUNCNAME" "$LINENO" "$?" "setup configure failed" * The die message: * setup configure failed This is not a v. helpful diagnostic. gtk, mozembed, and glib are all set as USE flags; but I doubt if that is the issue. Reproducible: Always Steps to Reproduce: 1. emerge =app-portage/himerge-0.16.1 2. 3. Actual Results: Ebuild fails. See Description, above. Expected Results: Successful build.
which version of GHC are you using?
# ghc --version The Glorious Glasgow Haskell Compilation System, version 6.8.2
Can you show your 'ghc-pkg list' output?
# ghc-pkg list /usr/lib/ghc-6.8.2/package.conf: Cabal-1.2.3.0, array-0.1.0.0, base-3.0.1.0, bytestring-0.9.0.1, containers-0.1.0.1, directory-1.0.0.0, filepath-1.1.0.0, (ghc-6.8.2), haskell98-1.0.1.0, hpc-0.5.0.0, old-locale-1.0.0.0, old-time-1.0.0.0, packedstring-0.1.0.0, parallel-1.0.0.0, pretty-1.0.0.0, process-1.0.0.0, random-1.0.0.0, readline-1.0.1.0, regex-base-0.72.0.1, regex-compat-0.71.0.1, regex-posix-0.72.0.2, rts-1.0, template-haskell-2.2.0.0, unix-2.3.0.0
It seems like the gtk2hs libraries are not registered with GHC. I just uploaded a new ebuild revision of himerge fixing dependencies versions between packages. Please, test with this new version and see if that fixes this error and report back. Thanks
Thanks, but it's not fixed things for me: >>> Emerging (1 of 1) app-portage/himerge-0.16.1-r1 to / (this is using the ebuild dated Jan 17 11:06 GMT) Linking setup ... Configuring himerge-0.16.1... setup: At least the following dependencies are missing: gtk -any, mozembed -any, glib -any * * ERROR: app-portage/himerge-0.16.1-r1 failed. * Call stack: * ebuild.sh, line 46: Called src_compile * environment, line 2771: Called haskell-cabal_src_compile * environment, line 2162: Called cabal_src_compile * environment, line 564: Called cabal-configure * environment, line 495: Called die * The specific snippet of code: * ./setup configure --ghc --prefix=/usr --with-compiler="$(ghc-getghc)" --with-hc-pkg="$(ghc-getghcpkg)" --prefix=/usr --libdir=/usr/$(get_libdir) --libsubdir=${P}/ghc-$(ghc-version) --datadir=/usr/share/ --datasubdir=${P}/ghc-$(ghc-version) ${cabalconf} ${CABAL_CONFIGURE_FLAGS} "$@" || diefunc "$FUNCNAME" "$LINENO" "$?" "setup configure failed" * The die message: * setup configure failed
Do the following: # ghc-pkg register /usr/lib/gtk2hs/mozembed.package.conf # ghc-pkg register /usr/lib/gtk2hs/glib.package.conf # ghc-pkg register /usr/lib/gtk2hs/gtk.package.conf In other words, register the missing libraries with GHC. That should work.
I tried the suggested actions but they weren't the answer in themselves, e.g.: # ghc-pkg register /usr/lib/gtk2hs/gtk.package.conf Reading package info from "/usr/lib/gtk2hs/gtk.package.conf" ... done. WARNING: unversioned dependencies are deprecated, and will NOT be accepted by GHC 6.10: base ghc-pkg: dependency mtl-1.0.1 doesn't exist (use --force to override) # ghc-pkg register --force /usr/lib/gtk2hs/gtk.package.conf Reading package info from "/usr/lib/gtk2hs/gtk.package.conf" ... done. WARNING: unversioned dependencies are deprecated, and will NOT be accepted by GHC 6.10: base dependency mtl-1.0.1 doesn't exist (ignoring) dependency cairo-0.9.12.1 doesn't exist (ignoring) Saving old package config file... done. Writing new package config file... done. [mtl-1.0.1 and cairo-0.9.12.1 _did_ exist on my system.] Similar results with other suggested actions and himerge 0.16.1 still failed to emerge because of the un-registered dependencies. HOWEVER, a new emerge of gtk2hs did the trick, the dependencies are now registered and the new version of himerge is now installed. Thanks for your time and effort. # ghc-pkg list /usr/lib/ghc-6.8.2/package.conf: Cabal-1.2.3.0, array-0.1.0.0, base-3.0.1.0, bytestring-0.9.0.1, cairo-0.9.12.1, containers-0.1.0.1, directory-1.0.0.0, filepath-1.1.0.0, gconf-0.9.12.1, (ghc-6.8.2), glade-0.9.12.1, glib-0.9.12.1, gtk-0.9.12.1, gtkglext-0.9.12.1, haskell98-1.0.1.0, hpc-0.5.0.0, mozembed-0.9.12.1, mtl-1.1.0.0, old-locale-1.0.0.0, old-time-1.0.0.0, packedstring-0.1.0.0, parallel-1.0.0.0, pretty-1.0.0.0, process-1.0.0.0, random-1.0.0.0, readline-1.0.1.0, regex-base-0.72.0.1, regex-compat-0.71.0.1, regex-posix-0.72.0.2, rts-1.0, soegtk-0.9.12.1, sourceview-0.9.12.1, svgcairo-0.9.12.1, template-haskell-2.2.0.0, unix-2.3.0.0