I want to run hoogle
on a project of mine. I successfully generated the hoogle database (a file with .hoo
extension) from my project.
But when I run the server locally, hoogle cannot find any of the functions or types that are defined in my project.
It can find some of the prelude functions such as map
, but none of the functions that are defined in my project.
hoogle dump my-project.hoo
dumps the content with no error.
I also moved my-project.hoo
to ~/.cabal/share/x86_64-osx-ghc-7.8.4/hoogle-4.2.38/databases
where all the .hoo
files reside. No success again.
-verbose
switch also does not output any useful information.
Any suggestion is appreciated.
Edit:
Thanks to mhuesch
's suggestion, I was able to get the search results. Although, the returned results are not linked to the local hackage documents. Something that I couldn't find anywhere on the web is that the hoogle server looks for a file called default.hoo
in the current directory.
Edit 2:
If you, like me, have 5000+ databases (i.e., .hoo
files) you may get a "too many open files" error when combining them. The trick is simple: run hoogle combine x*.hoo -o=parts/x.hoo
for all x='a' ... 'z'
and then run hoogle combine *.hoo -o=default.hoo
in the parts folder.
Edit 3:
If you want to link your hoogle search results with local hackage documentation,
use hoogle convert --doc='absolute-path-to-your-doc' your-package-hoogle-doc.txt default.hoo
.
I couldn't get relative path working.