[GHC] #8746: Crosscompiling
GHC
ghc-devs at haskell.org
Thu Feb 13 15:38:52 UTC 2014
#8746: Crosscompiling
-------------------------------------+-------------------------------------
Reporter: Visionstar | Owner:
Type: bug | Status: new
Priority: high | Milestone: 7.8.2
Component: Compiler | Version: 7.8.1-rc1
Resolution: | Keywords: Crosscompile
Operating System: Linux | cross compile failed ncurses
Type of failure: Building GHC | setupterm not found
failed | Architecture: Unknown/Multiple
Test Case: | Difficulty: Unknown
Blocking: | Blocked By:
| Related Tickets:
-------------------------------------+-------------------------------------
Comment (by Visionstar):
Thank you very much for your response!
i somehow managed to go past this 'bug' by doing the following:
I configured the ncurses library like this:
{{{
./configure arm-linux-gnueabihf --with-gcc=arm-linux-gnueabihf-gcc
--target=arm-linux-gnueabihf --prefix=/usr/arm-linux-gnueabihf --with-
shared --host=arm-linux-gnueabihf --with-build-cpp=arm-linux-gnueabihf-g++
}}}
Afterwards i did the "make" and added it to the path
Then i used the ./configure with an "sysroot" command command for GHC like
this:
{{{
--target=arm-linux-gnueabihf --with-gcc=arm-linux-gnueabihf-gcc --with-
shared --enable-unregisterised
}}}
Which probably didn't change anything, but it got me past that problem
with ncurses.
'''''But''''' i have now another problem: i get the following error when i
try to 'make' the application:
{{{
when making flags consistent: Warning:
Compiler unregisterised, so compiling via C
<<ghc: 1727251296 bytes, 1559 GCs, 5132689/17335628 avg/max bytes
residency (7 samples), 37M in use, 0.00 INIT (0.00 elapsed), 2.86 MUT
(7.22 elapsed), 0.30 GC (0.30 elapsed) :ghc>>
echo "compiler_stage2_depfile_haskell_EXISTS = YES" >>
compiler/stage2/build/.depend-v-dyn.haskell.tmp
for dir in compiler/stage2/build/./ compiler/stage2/build/CodeGen/
compiler/stage2/build/CodeGen/Platform/ compiler/stage2/build/Hoopl/
compiler/stage2/build/Llvm/ compiler/stage2/build/LlvmCodeGen/
compiler/stage2/build/PPC/ compiler/stage2/build/RegAlloc/
compiler/stage2/build/RegAlloc/Graph/
compiler/stage2/build/RegAlloc/Linear/
compiler/stage2/build/RegAlloc/Linear/PPC/
compiler/stage2/build/RegAlloc/Linear/SPARC/
compiler/stage2/build/RegAlloc/Linear/X86/
compiler/stage2/build/RegAlloc/Linear/X86_64/ compiler/stage2/build/SPARC/
compiler/stage2/build/SPARC/CodeGen/ compiler/stage2/build/Vectorise/
compiler/stage2/build/Vectorise/Builtins/
compiler/stage2/build/Vectorise/Generic/
compiler/stage2/build/Vectorise/Monad/
compiler/stage2/build/Vectorise/Type/
compiler/stage2/build/Vectorise/Utils/ compiler/stage2/build/X86/; do if
test ! -d $dir; then mkdir -p $dir; fi done
grep -v ' : [a-zA-Z]:/' compiler/stage2/build/.depend-v-dyn.haskell.tmp >
compiler/stage2/build/.depend-v-dyn.haskell.tmp2
sed '/hs$/ p ; /hs$/ s/o /hi /g
; /hs$/ s/:/ : %hi: %o / ; /hs$/ s/^/$(eval $(call
hi-rule,/ ; /hs$/ s/$/))/ ; /hs-boot$/ p
; /hs-boot$/ s/o-boot /hi-boot /g ; /hs-boot$/ s/:/ : %hi-
boot: %o-boot / ; /hs-boot$/ s/^/$(eval $(call hi-rule,/ ; /hs-
boot$/ s/$/))/' compiler/stage2/build/.depend-v-dyn.haskell.tmp2 >
compiler/stage2/build/.depend-v-dyn.haskell
"rm" -f utils/haddock/dist/build/.depend.c_asm.tmp
"rm" -f utils/haddock/dist/build/.depend.c_asm.bit
echo "utils/haddock_dist_depfile_c_asm_EXISTS = YES" >>
utils/haddock/dist/build/.depend.c_asm.tmp
mv utils/haddock/dist/build/.depend.c_asm.tmp
utils/haddock/dist/build/.depend.c_asm
"rm" -f utils/haddock/dist/build/.depend.haskell.tmp
"inplace/bin/ghc-stage1" -M -static -H32m -O -fasm -Rghc-timing -hide-
all-packages -i -iutils/haddock/driver -iutils/haddock/src
-iutils/haddock/vendor/attoparsec-0.10.4.0 -iutils/haddock/dist/build
-iutils/haddock/dist/build/autogen -Iutils/haddock/dist/build
-Iutils/haddock/dist/build/autogen -optP-DIN_GHC_TREE -optP-include
-optPutils/haddock/dist/build/autogen/cabal_macros.h -package
Cabal-1.18.1.3 -package array-0.5.0.0 -package base-4.7.0.0 -package
bytestring-0.10.4.0 -package containers-0.5.4.0 -package deepseq-1.3.0.2
-package directory-1.2.0.2 -package filepath-1.3.0.2 -package
ghc-7.8.0.20140204 -package xhtml-3000.2.1 -funbox-strict-fields -Wall
-fwarn-tabs -O2 -XHaskell2010 -no-user-package-db -rtsopts -odir
utils/haddock/dist/build -hidir utils/haddock/dist/build -stubdir
utils/haddock/dist/build -dep-makefile
utils/haddock/dist/build/.depend.haskell.tmp -dep-suffix "" -include-pkg-
deps utils/haddock/driver/Main.hs
utils/haddock/src/Documentation/Haddock.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec/ByteString.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec/ByteString/Char8.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec/Combinator.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec/Number.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec/ByteString/FastSet.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec/ByteString/Internal.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec/Internal.hs
utils/haddock/vendor/attoparsec-0.10.4.0/Data/Attoparsec/Internal/Types.hs
utils/haddock/src/Haddock.hs utils/haddock/src/Haddock/Interface.hs
utils/haddock/src/Haddock/Interface/Rename.hs
utils/haddock/src/Haddock/Interface/Create.hs
utils/haddock/src/Haddock/Interface/AttachInstances.hs
utils/haddock/src/Haddock/Interface/LexParseRn.hs
utils/haddock/src/Haddock/Interface/ParseModuleHeader.hs
utils/haddock/src/Haddock/Parser.hs
utils/haddock/src/Haddock/Parser/Util.hs
utils/haddock/src/Haddock/Utf8.hs utils/haddock/src/Haddock/Utils.hs
utils/haddock/src/Haddock/Backends/Xhtml.hs
utils/haddock/src/Haddock/Backends/Xhtml/Decl.hs
utils/haddock/src/Haddock/Backends/Xhtml/DocMarkup.hs
utils/haddock/src/Haddock/Backends/Xhtml/Layout.hs
utils/haddock/src/Haddock/Backends/Xhtml/Names.hs
utils/haddock/src/Haddock/Backends/Xhtml/Themes.hs
utils/haddock/src/Haddock/Backends/Xhtml/Types.hs
utils/haddock/src/Haddock/Backends/Xhtml/Utils.hs
utils/haddock/src/Haddock/Backends/LaTeX.hs
utils/haddock/src/Haddock/Backends/HaddockDB.hs
utils/haddock/src/Haddock/Backends/Hoogle.hs
utils/haddock/src/Haddock/ModuleTree.hs
utils/haddock/src/Haddock/Types.hs utils/haddock/src/Haddock/Doc.hs
utils/haddock/src/Haddock/Version.hs
utils/haddock/src/Haddock/InterfaceFile.hs
utils/haddock/src/Haddock/Options.hs
utils/haddock/src/Haddock/GhcUtils.hs
utils/haddock/src/Haddock/Convert.hs
when making flags consistent: Warning:
Compiler unregisterised, so compiling via C
utils/haddock/src/Haddock/InterfaceFile.hs:85:2:
error: #error Unsupported GHC version
#error Unsupported GHC version
^
<<ghc: 45331480 bytes, 13 GCs, 658070/1679640 avg/max bytes residency (3
samples), 31M in use, 0.00 INIT (0.00 elapsed), 0.08 MUT (0.15 elapsed),
0.03 GC (0.03 elapsed) :ghc>>
make[1]: *** [utils/haddock/dist/build/.depend.haskell] Fehler 1
make: *** [all] Fehler 2
}}}
I don't really know what to do with this error, because i thought that
7.8.0 is supported for crosscompiling, but now i get an unsupported ghc
version error?
Could you tell me how to come over this error or how to bypass/workaround
it?
Greetings,
Edi
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8746#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list