
When I tried to build VSHaskell with the RC2 version of GHC I got the following error: src\lib\Registry.hsc:30:0: Bad interface file: C:\Program Files\Haskell\comlib-0.1\ghc-6.5.20061001/Com Dll.hi Something is amiss; requested module comlib-0.1:ComDll differs from nam e found in the interface file comlib:ComDll Am I doing something wrong or it is a bug? The COM library is built using Cabal. Cheers, Krasimir

On Tue, Oct 03, 2006 at 10:45:51PM +0300, Krasimir Angelov wrote:
When I tried to build VSHaskell with the RC2 version of GHC I got the following error:
src\lib\Registry.hsc:30:0: Bad interface file: C:\Program Files\Haskell\comlib-0.1\ghc-6.5.20061001/Com Dll.hi Something is amiss; requested module comlib-0.1:ComDll differs from nam e found in the interface file comlib:ComDll
Am I doing something wrong or it is a bug? The COM library is built using Cabal.
Did it work with earlier RCs? Does comlib get wired into the compiler at all? I had a similar problem with base, where the compiler had the package name wired in: compiler/main/PackageConfig.hs: basePackageId = fsToPackageId FSLIT("base") but cabal was building it with -package-name base-2.0 To solve it I put -package-name base in ghc-options in the cabal file. Thanks Ian

On 10/4/06, Ian Lynagh
Did it work with earlier RCs?
It was working with a version slightly older than RC1. Definitely with a version without the advanced packages support.
Does comlib get wired into the compiler at all? I had a similar problem with base, where the compiler had the package name wired in: compiler/main/PackageConfig.hs: basePackageId = fsToPackageId FSLIT("base") but cabal was building it with -package-name base-2.0 To solve it I put -package-name base in ghc-options in the cabal file.
Thanks Ian
I am sure comlib isn't wired into the compiler. Perhaps there is a problem with Cabal somewhere. I will try to put custom -package-name option. If that works I will take a look into Cabal. Cheers, Krasimir

Building with -package-name comlib-0.1 helps. I saw that Cabal from
HEAD is passing the full package id to GHC but the version compiled in
ghc-6.5.20061001 is passing just the package name. Maybe the change
wasn't merged in GHC-6.6 branch or the bundle wasn't build from the
actual sources.
Cheers,
Krasimir
On 10/4/06, Krasimir Angelov
On 10/4/06, Ian Lynagh
wrote: Did it work with earlier RCs?
It was working with a version slightly older than RC1. Definitely with a version without the advanced packages support.
Does comlib get wired into the compiler at all? I had a similar problem with base, where the compiler had the package name wired in: compiler/main/PackageConfig.hs: basePackageId = fsToPackageId FSLIT("base") but cabal was building it with -package-name base-2.0 To solve it I put -package-name base in ghc-options in the cabal file.
Thanks Ian
I am sure comlib isn't wired into the compiler. Perhaps there is a problem with Cabal somewhere. I will try to put custom -package-name option. If that works I will take a look into Cabal.
Cheers, Krasimir

Krasimir Angelov wrote:
Building with -package-name comlib-0.1 helps. I saw that Cabal from HEAD is passing the full package id to GHC but the version compiled in ghc-6.5.20061001 is passing just the package name. Maybe the change wasn't merged in GHC-6.6 branch or the bundle wasn't build from the actual sources.
I just looked in the Cabal sources from the 6.6 branch: let ghcArgs = pkg_conf ++ ["-package-name", showPackageId (package pkg_descr) ] So it certainly passes the entire package ID (including the version) to GHC. So I'm confused! Could you perhaps have an old Setup binary left in your build tree? Cheers, Simon

I am using something like this:
c:\ghc\ghc-6.5.20061001\bin\runghc Setup.lhs ....
for building. So an old binary shouldn't matter. With -v option I saw that:
-package comlib
is passed. Is it possible to have .tar.gz bundle compiled with an old
Cabal? I suppose that runghc is always using ghc from its own
directory instead of those in the path.
Cheers,
Krasimir
On 10/5/06, Simon Marlow
Krasimir Angelov wrote:
Building with -package-name comlib-0.1 helps. I saw that Cabal from HEAD is passing the full package id to GHC but the version compiled in ghc-6.5.20061001 is passing just the package name. Maybe the change wasn't merged in GHC-6.6 branch or the bundle wasn't build from the actual sources.
I just looked in the Cabal sources from the 6.6 branch:
let ghcArgs = pkg_conf ++ ["-package-name", showPackageId (package pkg_descr) ]
So it certainly passes the entire package ID (including the version) to GHC. So I'm confused! Could you perhaps have an old Setup binary left in your build tree?
Cheers, Simon

Krasimir Angelov wrote:
I am using something like this:
c:\ghc\ghc-6.5.20061001\bin\runghc Setup.lhs ....
for building. So an old binary shouldn't matter. With -v option I saw that:
-package comlib
is passed. Is it possible to have .tar.gz bundle compiled with an old Cabal? I suppose that runghc is always using ghc from its own directory instead of those in the path.
Runghc looks in the PATH, so it's probably picking up the wrong ghc here. Cheers, Simon
participants (4)
-
Ian Lynagh
-
Krasimir Angelov
-
Simon Marlow
-
Simon Marlow