[GHC] #7639: Fix installation issues with cross compiling + honour Stage1Only properly

GHC cvs-ghc at haskell.org
Mon Feb 4 01:17:21 CET 2013


#7639: Fix installation issues with cross compiling + honour Stage1Only properly
----------------------------------+-----------------------------------------
Reporter:  StephenBlackheath      |          Owner:                  
    Type:  bug                    |         Status:  patch           
Priority:  normal                 |      Component:  Compiler        
 Version:  7.7                    |       Keywords:                  
      Os:  Unknown/Multiple       |   Architecture:  Unknown/Multiple
 Failure:  Installing GHC failed  |      Blockedby:                  
Blocking:  7610                   |        Related:                  
----------------------------------+-----------------------------------------

Comment(by StephenBlackheath):

 In case it's helpful, with this patch I am suggesting in this ticket...

 {{{
 --- a/utils/ghc-pkg/ghc.mk
 +++ b/utils/ghc-pkg/ghc.mk
 @@ -99,6 +99,7 @@
  utils/ghc-pkg_$(GHC_PKG_DISTDIR)_INSTALL = YES
  utils/ghc-pkg_$(GHC_PKG_DISTDIR)_INSTALL_SHELL_WRAPPER_NAME = ghc-
 pkg-$(ProjectVersion)
  utils/ghc-pkg_$(GHC_PKG_DISTDIR)_INSTALL_INPLACE = NO
 +utils/ghc-pkg_$(GHC_PKG_DISTDIR)_WANT_INSTALLED_WRAPPER = YES

  ifeq "$(BootingFromHc)" "YES"
  utils/ghc-pkg_dist-install_OTHER_OBJS += $(ALL_STAGE1_LIBS)
 $(ALL_STAGE1_LIBS) $(ALL_STAGE1_LIBS) $(ALL_RTS_LIBS) $(libffi_STATIC_LIB)
 }}}

 ...if it isn't applied, then this is what I get (latest head, git hash
 ca5d15a61c45d6ea763872df46efe5c7b33f8186):

 {{{
 blackh at amentet:~/src/ghc-ldu/ghc$ sudo make install
 ...
 ...snip...
 ...
 /usr/bin/install -c -m 644  utils/hsc2hs/template-hsc.h "/usr/local/ghc-
 ldu/lib/ghc-7.7.20130203"
 /usr/bin/install -c -m 755 -d "/usr/local/ghc-ldu/bin"
 "rm" -f "/usr/local/ghc-ldu/bin/arm-ldu-linux-gnueabi-ghc-pkg"
 ln -s arm-ldu-linux-gnueabi-ghc-pkg-7.7.20130203 "/usr/local/ghc-ldu/bin
 /arm-ldu-linux-gnueabi-ghc-pkg"
 /usr/bin/install -c -m 755 -d "/usr/local/ghc-ldu/bin"
 "rm" -f                                         "/usr/local/ghc-ldu/bin
 /arm-ldu-linux-gnueabi-ghc-7.7.20130203"
 ...
 ...snip...
 ...
 /usr/local/ghc-ldu/lib/ghc-7.7.20130203/transformers-0.3.0.0
 "/usr/local/ghc-ldu/lib/ghc-7.7.20130203/bin/ghc-pkg" --force --global-
 package-db "/usr/local/ghc-ldu/lib/ghc-7.7.20130203/package.conf.d" update
 rts/package.conf.install
 /bin/sh: /usr/local/ghc-ldu/lib/ghc-7.7.20130203/bin/ghc-pkg: No such file
 or directory
 make[1]: *** [install_packages] Error 127
 make: *** [install] Error 2
 blackh at amentet:~/src/ghc-ldu/ghc$ ls -l /usr/local/ghc-ldu/bin/
 total 8
 lrwxrwxrwx 1 root root   38 Feb  4 13:09 arm-ldu-linux-gnueabi-ghc -> arm-
 ldu-linux-gnueabi-ghc-7.7.20130203
 -rwxr-xr-x 1 root root  308 Feb  4 13:09 arm-ldu-linux-gnueabi-
 ghc-7.7.20130203
 lrwxrwxrwx 1 root root   42 Feb  4 13:09 arm-ldu-linux-gnueabi-ghc-pkg ->
 arm-ldu-linux-gnueabi-ghc-pkg-7.7.20130203
 -rwxr-xr-x 1 root root 1113 Feb  4 13:09 arm-ldu-linux-gnueabi-hsc2hs
 blackh at amentet:~/src/ghc-ldu/ghc$
 }}}

 So, arm-ldu-linux-gnueabi-ghc-pkg is a dangling symlink.

 If I then apply the patch, then the wrapper arm-ldu-linux-gnueabi-ghc-
 pkg-7.7.20130203 gets installed and the problem goes away.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7639#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler



More information about the ghc-tickets mailing list