[GHC] #9673: ghc-7.8.3 fails to build on aarch64
GHC
ghc-devs at haskell.org
Fri Oct 10 09:52:29 UTC 2014
#9673: ghc-7.8.3 fails to build on aarch64
-------------------------------+---------------------------------------
Reporter: juhpetersen | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: Compiler | Version: 7.8.3
Keywords: | Operating System: Linux
Architecture: arm | Type of failure: None/Unknown
Difficulty: Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Revisions:
-------------------------------+---------------------------------------
(I first mentioned this recently in ticket:7942#comment:42 but I thought
better to open a new ticket for this.)
I tried to build ghc-7.8.3 on aarch64 Linux (Fedora 21 development) with
the patch from #7942, and ran into:
{{{
"inplace/bin/ghc-cabal" copy libraries/haskell2010 dist-install "strip"
'/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64' '/usr'
'/usr/lib64/ghc-7.8.3' '/usr/share/doc/ghc/html/libraries' 'v dyn '
Installing library in
/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/haskell2010-1.1.2.0
"/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/bin
/ghc-pkg" --force --global-package-db
"/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/package.conf.d"
update rts/dist/package.conf.install
Reading package info from "rts/dist/package.conf.install" ... done.
rts-1.0: Warning: library-dirs: /usr/lib64/ghc-7.8.3/rts-1.0 doesn't exist
or isn't a directory
rts-1.0: Warning: include-dirs: /usr/lib64/ghc-7.8.3/include doesn't exist
or isn't a directory
rts-1.0: cannot find any of ["libHSrts.a","libHSrts.p_a","libHSrts-
ghc7.8.3.so","libHSrts-ghc7.8.3.dylib","HSrts-ghc7.8.3.dll"] on library
path (ignoring)
"inplace/bin/ghc-cabal" register libraries/ghc-prim dist-install
"/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/bin/ghc"
"/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/bin
/ghc-pkg"
"/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3"
'/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64' '/usr'
'/usr/lib64/ghc-7.8.3' '/usr/share/doc/ghc/html/libraries' NO
Warning: cannot determine version of
/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/bin
/ghc-pkg
:
""
Registering ghc-prim-0.3.1.0...
"inplace/bin/ghc-cabal" register libraries/integer-gmp dist-install
"/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/bin/ghc"
"/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/bin
/ghc-pkg"
"/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3"
'/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64' '/usr'
'/usr/lib64/ghc-7.8.3' '/usr/share/doc/ghc/html/libraries' NO
Warning: cannot determine version of
/builddir/build/BUILDROOT/ghc-7.8.3-38.fc22.aarch64/usr/lib64/ghc-7.8.3/bin
/ghc-pkg
:
""
ghc-cabal: Installed package ID not registered: "ghc-prim-0.3.1.0-inplace"
ghc.mk:901: recipe for target 'install_packages' failed
Makefile:64: recipe for target 'install' failed
make[1]: *** [install_packages] Error 1
make: *** [install] Error 2
}}}
The problem seems to be that the installed (dynlinked) ghc-pkg does give
any output!!
(eg "ghc-pkg --version" returns "", same for --help.)
When I try the built binaries I find that
ghc-7.8.3/utils/ghc-pkg/dist/build/tmp/ghc-pkg (which is statically
linked)
works normally (ie it outputs --help and --version) whereas
$DESTDIR/$libdir/ghc-7.8.3/bin/ghc-pkg gives no output on stdout!
A workaround is to build with DYNAMIC_GHC_PROGRAMS=NO
(ticket:7942#comment:44)
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9673>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list