
So I'm having a go of installing ghc-7.0.2 and haskell-platform-2011.2.0.0 on OSX 10.5. Since 10.5 is no longer supported I've had to compile from source. The good news is, so far as I can tell, everything works right out of the box.[1] But I've noticed when compiling the base libraries and HP a lot of warnings like the following: SpecConstr Function `a_s2Qn{v} [lid]' has three call patterns, but the limit is 1 Use -fspec-constr-count=n to set the bound Use -dppr-debug to see specialisations Though the number of call patterns and the limit vary. Googling led me to the SpecConstr file which I read briefly, so I know it has to do with optimizing away constructor allocations, but that's about it. Are these warnings I should be concerned about? [1] OSX 10.5.8 arch x86_64 (though it calls itself i386) Xcode 3.1.2 (not that it matters) gcc 4.0.1 (i686-apple-darwin9-gcc-4.0.1 Apple Inc. build 5490) ghc 6.12.1 / hp 2010.1.0.0 -- Live well, ~wren

On 20 March 2011 19:01, wren ng thornton
Are these warnings I should be concerned about?
No. These warnings just tell you explicitly that SpecConstr has exceeded the limit of specialisations that GHC is happy to generate. They are totally harmless and just mean that the output code is perhaps slower than it could be. Cheers, Max

Am 20.03.2011 20:01, schrieb wren ng thornton:
So I'm having a go of installing ghc-7.0.2 and haskell-platform-2011.2.0.0 on OSX 10.5. Since 10.5 is no longer supported I've had to compile from source. The good news is, so far as I can tell, everything works right out of the box.[1]
[...]
[1] OSX 10.5.8 arch x86_64 (though it calls itself i386)
Does your ghc-7.0.2 create 32 or 64 bit Code? What does "ghc --info" say?
Xcode 3.1.2 (not that it matters) gcc 4.0.1 (i686-apple-darwin9-gcc-4.0.1 Apple Inc. build 5490) ghc 6.12.1 / hp 2010.1.0.0
As far as I know there was no 64bit ghc-6.12.x for MacOS. Is it possible to create a 64bit ghc starting with a 32Bit ghc? I don't think so and always used ghc-6.10.4 from macports to create 64bit binary-dists that have the suffix -x86_64-apple-darwin.tar.bz2 rather than -i386-apple-darwin.tar.bz2 for 32bit compilers. Cheers Christian

On 3/21/11 4:16 AM, Christian Maeder wrote:
Am 20.03.2011 20:01, schrieb wren ng thornton:
So I'm having a go of installing ghc-7.0.2 and haskell-platform-2011.2.0.0 on OSX 10.5. Since 10.5 is no longer supported I've had to compile from source. The good news is, so far as I can tell, everything works right out of the box.[1]
[...]
[1] OSX 10.5.8 arch x86_64 (though it calls itself i386)
Does your ghc-7.0.2 create 32 or 64 bit Code? What does "ghc --info" say?
Xcode 3.1.2 (not that it matters) gcc 4.0.1 (i686-apple-darwin9-gcc-4.0.1 Apple Inc. build 5490) ghc 6.12.1 / hp 2010.1.0.0
As far as I know there was no 64bit ghc-6.12.x for MacOS. Is it possible to create a 64bit ghc starting with a 32Bit ghc? I don't think so and always used ghc-6.10.4 from macports to create 64bit binary-dists that have the suffix -x86_64-apple-darwin.tar.bz2 rather than -i386-apple-darwin.tar.bz2 for 32bit compilers.
There was never a 64 bit 6.12.3 for OS X. I tried for a while to patch 6.12.3 to make a MacPorts release, but it became clear that there were many problems, and that it would be better to contribute fixes to ghc to support O X 64 bit. 7.0.2 is the first release that works (mostly) on OS X 64 bit. It still fails significantly more regression tests than on 64 bit linux (around 80 tests instead of around 10). On the other hand we won't get the remaining bugs out without more people trying it out. I've started to work on updating the ghc portfile to 7.0.2. There will be many fewer patches, but there are still some questions about what to do (should support for forcing a 32 bit build on a 64 bit platform be retained) and quite a bit of testing is needed. However, I need to upgrade my own development environment to 7.0.2, so I have some incentive to get the work done. In the MacPorts version I may include my runtime linker debug patch, which won't be available generally until 7.2.1. If more linker problems are suspected, this would give a complete view of what the linker was doing. Best, Greg -- Gregory Wright Antiope Associates LLC 18 Clay Street Fair Haven, New Jersey 07733 USA +1 732 924-4549 [office] +1 732 345-8378 [fax] gwright@antiope.com

On 3/21/11 4:16 AM, Christian Maeder wrote:
Am 20.03.2011 20:01, schrieb wren ng thornton:
So I'm having a go of installing ghc-7.0.2 and haskell-platform-2011.2.0.0 on OSX 10.5. Since 10.5 is no longer supported I've had to compile from source. The good news is, so far as I can tell, everything works right out of the box.[1]
[...]
[1] OSX 10.5.8 arch x86_64 (though it calls itself i386)
Does your ghc-7.0.2 create 32 or 64 bit Code? What does "ghc --info" say?
$> ghc-7.0.2 --info [("Project name","The Glorious Glasgow Haskell Compilation System") ,("Project version","7.0.2") ,("Booter version","6.12.1") ,("Stage","2") ,("Build platform","i386-apple-darwin") ,("Host platform","i386-apple-darwin") ,("Target platform","i386-apple-darwin") ,("Have interpreter","YES") ,("Object splitting","NO") ,("Have native code generator","YES") ,("Have llvm code generator","YES") ,("Support SMP","YES") ,("Unregisterised","NO") ,("Tables next to code","YES") ,("RTS ways","l debug thr thr_debug thr_l thr_p dyn debug_dyn thr_dyn thr_debug_dyn") ,("Leading underscore","YES") ,("Debug on","False") ,("LibDir","/usr/local/lib/ghc-7.0.2") ,("Global Package DB","/usr/local/lib/ghc-7.0.2/package.conf.d") ,("C compiler flags","[\"-march=i686\",\"-m32\",\"-isysroot\",\"/Developer/SDKs/MacOSX10.5.sdk\",\"-mmacosx-version-min=10.5\",\"-fno-stack-protector\"]") ,("Gcc Linker flags","[\"-march=i686\",\"-m32\",\"-isysroot\",\"/Developer/SDKs/MacOSX10.5.sdk\",\"-mmacosx-version-min=10.5\"]") ,("Ld Linker flags","[\"-arch\",\"i386\",\"-macosx_version_min\",\"10.5\"]") ]
Xcode 3.1.2 (not that it matters) gcc 4.0.1 (i686-apple-darwin9-gcc-4.0.1 Apple Inc. build 5490) ghc 6.12.1 / hp 2010.1.0.0
As far as I know there was no 64bit ghc-6.12.x for MacOS. Is it possible to create a 64bit ghc starting with a 32Bit ghc? I don't think so and always used ghc-6.10.4 from macports to create 64bit binary-dists that have the suffix -x86_64-apple-darwin.tar.bz2 rather than -i386-apple-darwin.tar.bz2 for 32bit compilers.
The 6.12 is definitely 32bit. I can't say how that affects bootstrapping. -- Live well, ~wren

Am 21.03.2011 18:40, schrieb wren ng thornton:
On 3/21/11 4:16 AM, Christian Maeder wrote:
Am 20.03.2011 20:01, schrieb wren ng thornton:
So I'm having a go of installing ghc-7.0.2 and haskell-platform-2011.2.0.0 on OSX 10.5. Since 10.5 is no longer supported I've had to compile from source. The good news is, so far as I can tell, everything works right out of the box.[1]
[...]
[1] OSX 10.5.8 arch x86_64 (though it calls itself i386)
Does your ghc-7.0.2 create 32 or 64 bit Code? What does "ghc --info" say?
$> ghc-7.0.2 --info [("Project name","The Glorious Glasgow Haskell Compilation System") ,("Project version","7.0.2") ,("Booter version","6.12.1") ,("Stage","2") ,("Build platform","i386-apple-darwin") ,("Host platform","i386-apple-darwin") ,("Target platform","i386-apple-darwin") ,("Have interpreter","YES") ,("Object splitting","NO") ,("Have native code generator","YES") ,("Have llvm code generator","YES") ,("Support SMP","YES") ,("Unregisterised","NO") ,("Tables next to code","YES") ,("RTS ways","l debug thr thr_debug thr_l thr_p dyn debug_dyn thr_dyn thr_debug_dyn") ,("Leading underscore","YES") ,("Debug on","False") ,("LibDir","/usr/local/lib/ghc-7.0.2") ,("Global Package DB","/usr/local/lib/ghc-7.0.2/package.conf.d") ,("C compiler flags","[\"-march=i686\",\"-m32\",\"-isysroot\",\"/Developer/SDKs/MacOSX10.5.sdk\",\"-mmacosx-version-min=10.5\",\"-fno-stack-protector\"]")
,("Gcc Linker flags","[\"-march=i686\",\"-m32\",\"-isysroot\",\"/Developer/SDKs/MacOSX10.5.sdk\",\"-mmacosx-version-min=10.5\"]")
,("Ld Linker flags","[\"-arch\",\"i386\",\"-macosx_version_min\",\"10.5\"]")
This output (the flag -m32 and platform i386) clearly indicates that 32bit binaries (like the bootstrapping ghc-6.12.1) are produced. If you had added "darwin" to "OsSupportsSplitObjs" in "mk/config.mk.in" then "Object splitting" were "YES" and binaries were smaller, see http://hackage.haskell.org/trac/ghc/ticket/5008 Cheers Christian
Xcode 3.1.2 (not that it matters) gcc 4.0.1 (i686-apple-darwin9-gcc-4.0.1 Apple Inc. build 5490) ghc 6.12.1 / hp 2010.1.0.0
As far as I know there was no 64bit ghc-6.12.x for MacOS. Is it possible to create a 64bit ghc starting with a 32Bit ghc? I don't think so and always used ghc-6.10.4 from macports to create 64bit binary-dists that have the suffix -x86_64-apple-darwin.tar.bz2 rather than -i386-apple-darwin.tar.bz2 for 32bit compilers.
The 6.12 is definitely 32bit. I can't say how that affects bootstrapping.
participants (4)
-
Christian Maeder
-
Gregory Wright
-
Max Bolingbroke
-
wren ng thornton