GhcDynamic build fails on Windows: can't find DLLs
Enabling GhcDynamic causes the Windows build to fail:
"inplace/bin/ghc-stage2.exe" -H64m -O0 -fasm -i -iutils/ghctags/. -iutils/ghctags/dist-install/build -iutils/ghctags/dist-install/build/autogen -Iutils/ghctags/dist-install/build -Iutils/ghctags/dist-install/build/autogen -package ghc -no-user-package-conf -rtsopts -odir utils/ghctags/dist-install/build -hidir utils/ghctags/dist-install/build -stubdir utils/ghctags/dist-install/build -hisuf hi -osuf o -hcsuf hc -c utils/ghctags/./Main.hs -o utils/ghctags/dist-install/build/Main.o
/home/Max/Programming/Checkouts/ghc.shared/inplace/bin/ghc-stage2.exe: error while loading shared libraries: libHSprocess-1.0.1.4-ghc7.1.20110630.dll: cannot open shared object file: No such file or directory
The reason is that Windows searches for DLLs in the application directory, and the DLLs that a dynamic GHC depends on are not placed in that directory. (See http://msdn.microsoft.com/en-us/library/ms682586(v=vs.85).aspx)
Presumably the fix is to have the build system copy the dependent DLLs into inplace/bin as the final act of the stage2 build. (I'm not sure what happens after GHC is installed - presumably the DLLs are put into System32 or something?)
Trac metadata
Trac field | Value |
---|---|
Version | 7.0.3 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Build System |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |