
On 01 October 2004 10:37, Adrian Hey wrote:
Where does ghci look for .hi files from packages? (I doesn't seem to be the same place as ghc). AFAICT it expects to find them relative to the current directory, and I can only get it to work by cding to the appropriate directory *before* invoking ghci (doing this from within ghci seems to really mess things up).
But I guess this isn't what's supposed to happen because this solution will only work with one package.
My package entry looks like this..
Package {name = "Data.Tree.AVL", auto = True, import_dirs = ["/home/adrian/HaskellLibs/Data.Tree.AVL/pkg"], source_dirs = [], library_dirs = ["/home/adrian/HaskellLibs/Data.Tree.AVL/pkg"], hs_libraries = ["Data.Tree.AVL"], extra_libraries = [], include_dirs = [], c_includes = [], package_deps = ["base", "Data.COrdering"], extra_ghc_opts = [], extra_cc_opts = [], extra_ld_opts = [], framework_dirs = [], extra_frameworks = []}
Is there something missing here?
Looks fine - GHCi is supposed to look in the directories in import_dirs for .hi files. What does ghci -v tell you? Cheers, SImon

On Friday 01 Oct 2004 9:36 pm, Simon Marlow wrote:
Looks fine - GHCi is supposed to look in the directories in import_dirs for .hi files. What does ghci -v tell you?
Quite a lot :-), but nothing very surprising. I think I've found what causes the problem. It does actually seem to work as expected, provided the current directory is not what it usually is when I'm working on the library. I.E. /home/adrian/HaskellLibs/Data.Tree.AVL This is what I get
Prelude> :m Data.Tree.AVL Prelude Data.Tree.AVL> asTreeL "ABCD"
<interactive>:1: tcLookup: `asTreeL' is not in scope In the definition of `it': it = asTreeL "ABCD"
Failed to load interface for `Data.Tree.AVL.List': Bad interface file: ./Data/Tree/AVL/List.hi ./Data/Tree/AVL/List.hi: openBinaryFile: does not exist (No such file or directory)
Failed to find interface decl for `asTreeL' from module `Data.Tree.AVL.List'
But if I cd to.. I.E. /home/adrian/HaskellLibs/Data.Tree.AVL/pkg ..it works fine. I've since discovered it also seems to work fine from from any other directory too. So it seems to something peculiar about the one particular directory that upsets it. This is with version 6.2.20040915, but 6.2.1 did the same thing IIRC. Regards -- Adrian Hey
participants (2)
-
Adrian Hey
-
Simon Marlow