Q: Profile Haskell without installing installing profiling libraries for all dependencies
A: You can't. Just install them, what's the problem?
Why?
If I only want to profile my code, considering library calls as no-op for profiling, why can't it allow partial profiling? Enabling profling can be tricky if there are a lot of already installed dependencies. While less accurate, it should be easier.
My understanding is that when you ask GHC to compile code for profiling, the binary interface to the code changes. (And also it gets linked against a different version of the RTS.) Since all code in the same program must have the same binary interface... well, that's why.
To avoid this, GHC would have to either support mixing different binary interfaces in the same program, or find a way to compile profiled code with the same interface as non-profiled code. I guess neither of these things is particularly trivial to do.
I do agree it's very annoying, though...
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With