Opened 15 years ago
Closed 14 years ago
#20273 closed defect (invalid)
hs-cabal depends on zlib
Reported by: | gale@… | Owned by: | gwright@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.7.1 |
Keywords: | zlib | Cc: | |
Port: | hs-cabal |
Description
After installing ghc 6.10.3, the upgrade to hs-cabal 0.6.2 failed due to an unsatisfied dependency on the zlib package from hackage. The vanilla ghc install apparently doesn't provide that anymore. (Did it ever?)
Change History (5)
comment:1 Changed 15 years ago by mf2k (Frank Schima)
Owner: | changed from macports-tickets@… to gwright@… |
---|
comment:2 follow-up: 3 Changed 15 years ago by gwright@…
Status: | new → assigned |
---|
comment:3 Changed 15 years ago by gale@…
Replying to gwright@…:
This is not a bug. hs-cabal has a dependency on hs-zlib already. However, you need to rebuild all of you haskell libraries after the upgrade to 6.10.3.
Oh, I see. But -Rf is not right, it also recompiles zillions of non-Haskell packages.
In practice, just installing zlib manually via cabal worked here. I think the right port command would be
port -fun upgrade hs-zlib
and repeat for each port that represents a hackage package.
MacPorts has no way to do this automatically. However, a shell script could probably be added to the ghc port which would run in the post-activate phase to update the dependents.
But you don't want all dependents, just those that are hackage packages. We need some way to get a list of those.
comment:5 Changed 14 years ago by jmroot (Joshua Root)
Resolution: | → invalid |
---|---|
Status: | assigned → closed |
This is not a bug. hs-cabal has a dependency on hs-zlib already. However, you need to rebuild all of you haskell libraries after the upgrade to 6.10.3. This is required because ghc changes it ABI incompatibly, even for minor versions. You probably have the hs-zlib port installed, but it hasn't been built by and registered with the new compiler.
Try
This forces upgrading ghc and all of the ports that depend on it. It will rebuild and reregister all of your haskell libraries and ghc too.. It will also take a long time if you many libraries installed.
MacPorts has no way to do this automatically. However, a shell script could probably be added to the ghc port which would run in the post-activate phase to update the dependents.