Changes between Version 1 and Version 2 of Building/Preparation/Solaris


Ignore:
Timestamp:
Dec 20, 2012 12:07:34 AM (3 years ago)
Author:
dterei
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Building/Preparation/Solaris

    v1 v2  
    1  
    2  
    31= Setting up a Solaris system for building GHC = 
    42 
    5 See [wiki:Building/Solaris].  !ToDo: move the relevant parts of the docs here. 
     3These instructions have only been checked for GHC 6.12.1 on Solaris 10 on SPARC. They should also apply to later versions of GHC, Solaris 8 and later, and perhaps Solaris on x86.  
     4 
     5GHC versions 6.10.1 and earlier don't have a working SPARC native code generator, and have many small build issues with Solaris. Use GHC 6.12.1 or later. 
     6 
     7== Installing GNU packages == 
     8 
     9GHC relies on many GNU-isms that are not supported by the native Solaris build tools. The following environment is known to work. Later versions may work but have not been tested. Taking the time to install these tools is likely to be less painful than debugging build problems due to unsupported versions (and this is your official warning). 
     10 
     11 || GNU binutils 2.20  || for GNU ld, maybe others || 
     12 || GNU coreutils 8.4  || for GNU tr, maybe others || 
     13 || GNU make 3.81     || make files use GNU extensions || 
     14 || GNU m4 1.4.13     || || 
     15 || GNU sed 4.2           || build scripts use GNU extensions || 
     16 || GNU tar 1.20         || Solaris tar doesn't handle large file names || 
     17 || GNU grep 2.5      || build scripts use GNU extensions || 
     18 || GNU readline 5 || || 
     19 || GNU ncurses 5.5 || || 
     20 || Python 2.6.4 || needed to run the testsuite with multiple threads || 
     21 || GCC 4.1.2       || this exact version is strongly recommended || 
     22 
     23Some of these can be obtained as binary versions from the  [http://www.blastwave.org/ blastwave.org] collection, others need to be downloaded as source from [http://www.gnu.org gnu.org]. 
     24 
     25The blastwave libraries are usually installed under `/opt/csw`, so you may need to manually set `LD_LIBRARY_PATH` to point to them: 
     26 
     27{{{ 
     28export LD_LIBRARY_PATH=/opt/csw/lib 
     29}}} 
     30 
     31== Using a bootstrapping GHC == 
     32 
     33You can either get a binary distribution from the GHC download page or use some other pre-existing GHC binary. These binaries usually assume that required libraries are reachable via LD_LIBRARY_PATH, or are in `/opt/csw`. If you get errors about missing libraries or header files, then the easiest solution is to create soft links to them in, `lib/ghc-6.12.1` and `lib/ghc-6.12.1/include` of the installed binary distribution. These paths are always searched for libraries / headers.