在项目中pandoc ,Paths_pandoc被导入到Shared.hs中。 Paths_pandoc.hs 位于 dist/build/autogen/中。它是如何生成的以及它对 pandoc 有什么作用。
最佳答案
这是由 Cabal 生成的文件。
当您在项目的 .cabal
文件中指定 Data-files:
时,这些文件将被复制到系统上“数据文件”的合适位置当您运行cabal install
时。在 Windows 上,这可能是“C:\Program Files\Something”,在 Linux 上可能是“/usr/share/something”(至少当您执行 --system
安装时)。
您的代码需要知道文件被复制到哪里,因此 Cabal 生成该特殊模块,其中包含用于复制数据文件的安装路径的变量,以便您的代码可以找到已安装的数据文件。
该模块还包含 Cabal 为您提供的其他信息,但该模块的主要目的就是我刚才描述的。
参见this blog post了解更多信息。
关于haskell - Paths_pandoc.hs是如何生成的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9279489/