Thanks! That’s all identical to my procedure except that I’m using 10.9 DP5/Xcode 5 DP5, so I guess that must play some role, though I’m not sure what. Re: iPod Touch authorization, if you haven’t tried in a few days or so, Apple’s now claiming everything’s back online finally https://developer.apple.com/support/system-status/ Cheers Luke On Sun, Aug 11, 2013 at 5:37 PM, Stephen Blackheath [to GHC-iPhone] < likeliest.complexions.stephen@blacksapphire.com> wrote:
Luke,
I didn't experience anything like you described. Here's as much detail as I can think of about what I did:
* Mac OS/X 10.8.4
* Xcode 4.6
* ghc-7.6.3 downloaded from http://haskell.org/ghc as the bootstrap compiler
* llvm - 3.0 built from source downloaded off the llvm site:
Low Level Virtual Machine (http://llvm.org/): llvm version 3.0 Optimized build. Built Jan 31 2012 (09:33:35). Host: x86_64-apple-darwin12.4.0 Host CPU: penryn
Registered Targets: alpha - Alpha [experimental] arm - ARM ... and others ...
Before I had a problem with not enough memory but I bought some more. So I got a cross compiler built, but wasn't able to test it, because I can't authorize my iPod Touch for development at the moment (Apple systems are down). So I can't verify that it produces iOS executables that work.
The latest commit in the git log for GHC HEAD was this:
commit e8aa8ccba0c40884765281b21ff8f4**411802dd41 Author: Richard Eisenberg <eir@cis.upenn.edu> Date: Fri Aug 2 15:47:03 2013 +0100
Implement "roles" into GHC. ...
I patched it as attached here (same patch as in my last email).
The procedure I used was exactly the one described at http://ghc.haskell.org/trac/**ghc/wiki/Building/**CrossCompiling/iOS<http://ghc.haskell.org/trac/ghc/wiki/Building/CrossCompiling/iOS>
Thanks for your work on this! That problem you're having is pretty weird!
Steve
On 11/08/13 20:14, Luke Iannini wrote:
And the truly final word for the moment : ) — I built a tool to partially automate the indentation workaround for LLVM 3.0 and it yields the same "co-processor offset out of range"/"unsupported relocation on symbol LCPI65_0" errors LLVM 3.3/3.4 did when it finally gets to integer-simple/GHC/Integer/**Type.hs.
On Sun, Aug 11, 2013 at 3:06 AM, Luke Iannini <lukexipd@gmail.com <mailto:lukexipd@gmail.com>> wrote:
OK! So just to summarize: Building GHC HEAD with LLVM 3.0 or 3.2 (using GHC 7.6.3 as the bootstrap) on OS X 10.9 DP5/Xcode 5 DP5 exhibits very strange behavior wherein layout-based code along with mixed-tabs-and-spaces code fails to parse correctly, with issues in hundreds of files in the GHC HEAD tree. I don't have a 10.8 machine to check if this is a 10.9 exclusive issue, so I'd love if someone can try using these binaries to build GHC HEAD: http://llvm.org/releases/3.0/**clang+llvm-3.0-x86_64-apple-** darwin11.tar.gz<http://llvm.org/releases/3.0/clang+llvm-3.0-x86_64-apple-darwin11.tar.gz>
Building GHC HEAD with LLVM 3.3 or 3.4 works great as a regular compiler with the 10.9 workarounds I outlined in another thread, but fails when compiling as a cross-compiler (./configure --target=arm-apple-darwin10) with these errors: https://gist.github.com/**lukexi/2b129f34fa027172c5ee<https://gist.github.com/lukexi/2b129f34fa027172c5ee>
So I'm between a rock and a hard place at the moment.
The only (very tedious and slow) workaround I've found for the 3.0/3.2 bug is to manually expand tabs to spaces, and to transform do x y into do x y (similarly for where and let blocks)
Cheers Luke
On Sun, Aug 11, 2013 at 1:53 AM, Luke Iannini <lukexipd@gmail.com <mailto:lukexipd@gmail.com>> wrote:
Argh, sorry for the confusion: 3.2 *does* exhibit the issue. 3.3 and 3.4 do not.
On Sun, Aug 11, 2013 at 1:39 AM, Luke Iannini <lukexipd@gmail.com <mailto:lukexipd@gmail.com>> wrote:
Further investigation:
I grabbed 7.6.3 just to see if I somehow had a bad install of GHC, but the problem still occurred.
The problem only occurs with LLVM 3.0.
It is not related to cross-compilation or Stephen's patches: I tested this on multiple fresh clones with --with-gcc=clang.
LLVM 3.2, 3.3 and 3.4 do not exhibit the issue.
If anyone wants to try to reproduce, you can grab the LLVM 3.0 binaries here Clang Binaries for MacOS X/x86-64 <http://llvm.org/releases/3.0/**clang+llvm-3.0-x86_64-apple-* *darwin11.tar.gz<http://llvm.org/releases/3.0/clang+llvm-3.0-x86_64-apple-darwin11.tar.gz>> and
just drop them in your path.
(Stephen, I'm now trying your patch with LLVM 3.2)
Cheers Luke
On Sat, Aug 10, 2013 at 8:11 PM, Luke Iannini <lukexipd@gmail.com <mailto:lukexipd@gmail.com>> wrote:
The first error on a fresh checkout is
"/usr/local/bin/ghc" -hisuf hi -osuf o -hcsuf hc -static -H32m -O -package-db libraries/bootstrapping.conf -hide-all-packages -i -iutils/hsc2hs/. -iutils/hsc2hs/dist/build -iutils/hsc2hs/dist/build/**autogen -Iutils/hsc2hs/dist/build -Iutils/hsc2hs/dist/build/**autogen -optP-include -optPutils/hsc2hs/dist/build/**autogen/cabal_macros.h -package base-4.6.0.1 -package containers-0.5.0.0 -package directory-1.2.0.1 -package filepath-1.3.0.1 -package process-1.1.0.2 -XHaskell98 -XCPP -XForeignFunctionInterface -no-user-package-db -rtsopts -odir utils/hsc2hs/dist/build -hidir utils/hsc2hs/dist/build -stubdir utils/hsc2hs/dist/build -c utils/hsc2hs/./C.hs -o utils/hsc2hs/dist/build/C.o
utils/hsc2hs/C.hs:155:3:
parse error (possibly incorrect indentation or mismatched brackets)
There seem to be two classes of error: one is the layout issue above, but other files can be fixed by simply running 'expand' on them.
On Sat, Aug 10, 2013 at 6:42 PM, Luke Iannini <lukexipd@gmail.com <mailto:lukexipd@gmail.com>> wrote:
Hi Stephen/all,
I got LLVM 3.0 installed and started building again but hit a very strange problem now wherein tons of layout-based code (as in http://en.wikibooks.org/wiki/**Haskell/Indentation<http://en.wikibooks.org/wiki/Haskell/Indentation>) is suddenly erroring out, e.g. compiler/coreSyn/CoreUnfold.**lhs:481:2: parse error (possibly incorrect indentation or mismatched brackets) (some files also seem to be triggered by mixed tabs and spaces)
I can fix the errors one by one by converting the code to use more concrete indentation (like do thing1 thing2 ) but it's all over the tree.
Anyone have any idea what might cause this?
Cheers Luke
On Fri, Aug 9, 2013 at 6:14 AM, Stephen Blackheath [to GHC-iPhone] <likeliest.complexions.**stephen@blacksapphire.com<likeliest.complexions.stephen@blacksapphire.com> <mailto:likeliest.complexions.** stephen@blacksapphire.com<likeliest.complexions.stephen@blacksapphire.com>
wrote:
Luke,
Try llvm version 3.0 - that's what I'm using, and it definitely worked before. llvm-3.1 is broken for GHC+ARM. As for llvm >= 3.2, I'm not sure if it's been fixed yet, but it wasn't working last time I tried a couple of months ago. I think this was because llvm is getting fussier about its input and GHC hasn't been "tightened up" yet.
It's really easy to build llvm from source.
Steve
On 09/08/13 20:35, Luke Iannini wrote:
v3 output: https://gist.github.com/__** lukexi/7ca55b36269703236f1f<https://gist.github.com/__lukexi/7ca55b36269703236f1f>
<https://gist.github.com/** lukexi/7ca55b36269703236f1f<https://gist.github.com/lukexi/7ca55b36269703236f1f>
On Fri, Aug 9, 2013 at 4:34 AM, Luke Iannini <lukexipd@gmail.com <mailto: lukexipd@gmail.com> <mailto:lukexipd@gmail.com
<mailto:lukexipd@gmail.com>>> wrote:
OK, that got me past that one.
Now I'm stuck here during compilation of integer-simple: https://gist.github.com/__** lukexi/d9f8bfd8bca56d5d0ee9<https://gist.github.com/__lukexi/d9f8bfd8bca56d5d0ee9>
<https://gist.github.com/** lukexi/d9f8bfd8bca56d5d0ee9<https://gist.github.com/lukexi/d9f8bfd8bca56d5d0ee9>
("unsupported relocation on symbol"/"co-processor offset out of range")
On Fri, Aug 9, 2013 at 4:00 AM, Luke Iannini <lukexipd@gmail.com <mailto:lukexipd@gmail.com> <mailto:lukexipd@gmail.com
<mailto:lukexipd@gmail.com>>> wrote:
OK, I'm underway on this.
First roadbump was:
"inplace/bin/ghc-stage1" -static -H32m -O -Iincludes -Iincludes/dist -Iincludes/dist-__**derivedconstants/header
-Iincludes/dist-ghcconstants/_**_header -Irts
-Irts/dist/build -DCOMPILING_RTS -package-name rts -dcmm-lint -i -irts -irts/dist/build -irts/dist/build/autogen -Irts/dist/build -Irts/dist/build/autogen -O2 -c rts/Apply.cmm -o rts/dist/build/Apply.o
You are using a new version of LLVM that hasn't been tested yet! We will try though... /usr/local/bin/llc: : error: unable to get target for 'arm-apple-darwin10', see --version and --triple.
which I figured out were because the homebrew LLVM 3.4 only includes host platforms by default (x86/x86-64) Reinstalling it with all-targets enables them all: brew install llvm --with-clang --all-targets --HEAD
Trying again now.
On Thu, Aug 8, 2013 at 5:29 PM, Luke Iannini <lukexipd@gmail.com <mailto:lukexipd@gmail.com> <mailto:lukexipd@gmail.com
<mailto:lukexipd@gmail.com>>> wrote:
Update: I've got GHC HEAD building on 10.9 again, tonight I'll dive into the iOS patch! Cheers Luke
On Wed, Aug 7, 2013 at 9:12 PM, Carter Schonwald <carter.schonwald@gmail.com <mailto:carter.schonwald@**gmail.com<carter.schonwald@gmail.com>
<mailto:carter.schonwald@__gma**il.com<http://gmail.com>
<mailto:carter.schonwald@**gmail.com<carter.schonwald@gmail.com>>>> wrote:
if you're on 10.8, just DL the 4.6 CLI tools to get things working again.
If you're on 10.9, you'll need to use recent GHC head + CLANG HEAD, (ok, the most recent XCODE 5 dev preview CLI tools may have all the needed clang patches, but thats still needing its own validation, orthogonal to the IOS related issues )
On Tue, Aug 6, 2013 at 7:06 PM, Luke Iannini <lukexipd@gmail.com <mailto:lukexipd@gmail.com> <mailto:lukexipd@gmail.com
<mailto:lukexipd@gmail.com>>> wrote:
Hi Stephen,
I installed 10.9 for another project and thus am in the middle of fixing up my system to be able to build GHC again, but I think I'm close — as soon as I have it going I'll try this.
In the meantime someone still on 10.8 should definitely try the patch!
Hope you're great! Luke
On Tue, Aug 6, 2013 at 6:42 PM, Stephen Blackheath [to GHC-iPhone]
<likeliest.complexions.__** stephen@blacksapphire.com<likeliest.complexions.__stephen@blacksapphire.com> <mailto:likeliest.complexions.** stephen@blacksapphire.com<likeliest.complexions.stephen@blacksapphire.com>
<mailto:likeliest.complexions.** __stephen@blacksapphire.com<likeliest.complexions.__stephen@blacksapphire.com>
<mailto:likeliest.complexions.** stephen@blacksapphire.com<likeliest.complexions.stephen@blacksapphire.com>
wrote:
Hi all,
A couple of months ago I got some patches applied to GHC mainline for the ability to cross compile to iOS. I've been doing other things and now I want to test those changes. The trouble is, I am having Apple trouble and I can't get Xcode to work.
If anyone is interested in testing it for me, I'd appreciate it.
The patch attached here needs to be applied to GHC head. Using this, I was able to get the cross compiler to build. The instructions are here:
http://ghc.haskell.org/trac/__** __ghc/wiki/Building/____**CrossCompiling/iOS<http://ghc.haskell.org/trac/____ghc/wiki/Building/____CrossCompiling/iOS> <http://ghc.haskell.org/trac/_** _ghc/wiki/Building/__**CrossCompiling/iOS<http://ghc.haskell.org/trac/__ghc/wiki/Building/__CrossCompiling/iOS>
<http://ghc.haskell.org/trac/_** _ghc/wiki/Building/__**CrossCompiling/iOS<http://ghc.haskell.org/trac/__ghc/wiki/Building/__CrossCompiling/iOS> <http://ghc.haskell.org/trac/** ghc/wiki/Building/**CrossCompiling/iOS<http://ghc.haskell.org/trac/ghc/wiki/Building/CrossCompiling/iOS>
Steve
______________________________** ___________________
iPhone mailing list iPhone@haskell.org <mailto:iPhone@haskell.org> <mailto:iPhone@haskell.org <mailto:iPhone@haskell.org>>
http://www.haskell.org/__** mailman/listinfo/iphone<http://www.haskell.org/__mailman/listinfo/iphone> <http://www.haskell.org/** mailman/listinfo/iphone <http://www.haskell.org/mailman/listinfo/iphone>>
______________________________** ___________________
iPhone mailing list iPhone@haskell.org <mailto:iPhone@haskell.org> <mailto:iPhone@haskell.org <mailto:iPhone@haskell.org>> http://www.haskell.org/__** mailman/listinfo/iphone<http://www.haskell.org/__mailman/listinfo/iphone> <http://www.haskell.org/** mailman/listinfo/iphone <http://www.haskell.org/mailman/listinfo/iphone>>