通过 cabal 中的可执行文件分析库
Posted
技术标签:
【中文标题】通过 cabal 中的可执行文件分析库【英文标题】:Profiling library via executable in cabal 【发布时间】:2014-02-18 04:15:22 【问题描述】:愚蠢的问题。我有一个带有 library
和 executable
的 cabal 文件,我想用它来分析图书馆,但我无法从我的图书馆中看到成本中心(尽管我从其他模块中看到了一些,比如 @987654323 @)。
这是我的 cabal 文件的简化版本
flag dev
default: False
manual: True
library
exposed-modules: Foo
ghc-options: -Wall
ghc-prof-options: -fprof-auto
build-depends: base
executable dev-example
if !flag(dev)
buildable: False
ghc-options: -ddump-to-file -ddump-simpl -dsuppress-module-prefixes -dsuppress-uniques -ddump-core-stats -ddump-inlinings
ghc-options: -O2 -rtsopts
ghc-prof-options: -fprof-auto
hs-source-dirs: dev-example, ./
main-is: Main.hs
build-depends: base
我一直在做什么
$ cabal configure -fdev -w /usr/local/bin/ghc-7.6.3 --enable-library-profiling --enable-executable-profiling
$ cabal run dev-example -- +RTS -h -p
【问题讨论】:
【参考方案1】:呃,问题只是我的库代码被内联(或至少标记为INLINABLE
)。
【讨论】:
以上是关于通过 cabal 中的可执行文件分析库的主要内容,如果未能解决你的问题,请参考以下文章
Makefile常用万能模板(包括静态链接库动态链接库可执行文件)
Makefile常用万能模板(包括静态链接库动态链接库可执行文件)