[GHC] #16025: Makefiles bundled with source distribution fail to build cross-compiler.
GHC
ghc-devs at haskell.org
Mon Dec 10 01:16:11 UTC 2018
#16025: Makefiles bundled with source distribution fail to build cross-compiler.
-------------------------------------+-------------------------------------
Reporter: vanessamchale | Owner: (none)
Type: bug | Status: new
Priority: normal | Milestone:
Component: Build System | Version: 8.6.3
(make) |
Keywords: | Operating System: Unknown/Multiple
Architecture: x86_64 | Type of failure: Building GHC
(amd64) | failed
Test Case: | Blocked By:
Blocking: | Related Tickets:
Differential Rev(s): | Wiki Page:
-------------------------------------+-------------------------------------
When trying to build a cross-compiler with GHC 8.6.3, I ran into the
following:
{{{
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
ld: libraries/ghc-prim/dist-install/build/GHC/CString.o: Relocations in
generic ELF (EM: 40)
libraries/ghc-prim/dist-install/build/GHC/CString.o: error adding symbols:
File in wrong format
echo libraries/ghc-prim/dist-install/build/GHC/CString.o libraries/ghc-
prim/dist-install/build/GHC/Classes.o libraries/ghc-prim/dist-
install/build/GHC/Debug.o libraries/ghc-prim/dist-
install/build/GHC/IntWord64.o libraries/ghc-prim/dist-
install/build/GHC/Magic.o libraries/ghc-prim/dist-
install/build/GHC/PrimopWrappers.o libraries/ghc-prim/dist-
install/build/GHC/Tuple.o libraries/ghc-prim/dist-
install/build/GHC/Types.o libraries/ghc-prim/dist-
install/build/cbits/atomic.o libraries/ghc-prim/dist-
install/build/cbits/bswap.o libraries/ghc-prim/dist-
install/build/cbits/clz.o libraries/ghc-prim/dist-
install/build/cbits/ctz.o libraries/ghc-prim/dist-
install/build/cbits/debug.o libraries/ghc-prim/dist-
install/build/cbits/longlong.o libraries/ghc-prim/dist-
install/build/cbits/pdep.o libraries/ghc-prim/dist-
install/build/cbits/pext.o libraries/ghc-prim/dist-
install/build/cbits/popcnt.o libraries/ghc-prim/dist-
install/build/cbits/word2float.o >> libraries/ghc-prim/dist-
install/build/libHSghc-prim-0.5.3.a.contents
libraries/ghc-prim/ghc.mk:4: recipe for target 'libraries/ghc-prim/dist-
install/build/HSghc-prim-0.5.3.o' failed
make[1]: *** [libraries/ghc-prim/dist-install/build/HSghc-prim-0.5.3.o]
Error 1
make[1]: *** Waiting for unfinished jobs....
"arm-linux-gnueabihf-ar" q libraries/ghc-prim/dist-install/build
/libHSghc-prim-0.5.3.a @libraries/ghc-prim/dist-install/build/libHSghc-
prim-0.5.3.a.contents
arm-linux-gnueabihf-ar: creating libraries/ghc-prim/dist-install/build
/libHSghc-prim-0.5.3.a
"rm" -f libraries/ghc-prim/dist-install/build/libHSghc-
prim-0.5.3.a.contents
Makefile:122: recipe for target 'all' failed
make: *** [all] Error 2
It seems that this was due to an error in mk/config.mk, viz.
LD_NO_GOLD = ld
LD = arm-linux-gnueabihf-ld.gold
NM = arm-linux-gnueabihf-nm
AR = arm-linux-gnueabihf-ar
OBJDUMP = arm-linux-gnueabihf-objdump
}}}
The variable {{{LD_NO_GOLD}}} should have the prefix {{{arm-linux-
gnueabihf}}}. When I set {{{LD_NO_GOLD}}} to {{{arm-linux-gnueabihf-ld}}}
manually, the build proceeds and works correctly.
Let me know if you need any additional information.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/16025>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list