I think this is just the way it works currently, since cabal only tracks the installed package and version, but not if profiling was enabled. I always have my ~/.cabal/config set to install profiling libraries to avoid this problem. That doesn't help you now though. The easiest thing to do is probably to remove your sandbox and start from a blank slate.

Erik


On Tue, Nov 6, 2012 at 7:48 PM, Mike Craig <mkscrg@gmail.com> wrote:
Hi all,

So I've been working on a project and I'd like to run it with profiling to diagnose the performance hotspots. It's a cabal project and I've been using cabal-dev for sandboxing. Normally I would just run `cabal-dev install` to get everything built and the executables "installed" in ./cabal-dev/bin. Since I want to compile with profiling, I tried this:

$ cabal-dev install enable-executable-profiling

The build fails with an error log that includes something like "Perhaps you haven't installed the profiling libraries for package `http-types-0.7.3.0.1'?" If I then try ...

$ cabal-dev install -p --reinstall --force-reinstalls http-types-0.7.3.0.1

... I find myself walking down the dependency tree. (http-types -> case-insensitive -> hashable -> etc.) Presumably this would eventually walk me out of the sandbox and I would be reinstalling the base libraries in my sandbox with profiling enabled.

This doesn't seem right. (And if it is right, it doesn't seem like I should have to do it manually, package by package.) What am I doing wrong?

Cheers,
Mike

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe