debug: remove #ifdef's and use dumb logger
[mate.git] / README
1 MateVM is i686 only, at the moment.
2
3 == DEPENDENCIES ==
4 === GHC ===
5 install GHC via your distro manager. make sure you install
6 it with shared libaries.
7 on ubuntu 12.04 LTS it is:
8         $ sudo apt-get install ghc-dynamic
9
10 for an "easy" installation of the remaining packages, you can use
11 the script "./tools/installhaskellenv.sh".
12 note, that it deletes your ~/.cabal and ~/.ghc directory first.
13
14
15 === HARPY ===
16         $ cabal install harpy --enable-shared
17
18 if this fails (e.g. you use ghc >= 7.0) then try our patched version:
19         $ git clone git://wien.tomnetworks.com/harpy.git
20         $ cd harpy
21         $ cabal configure --enable-shared
22         $ cabal build
23         $ cabal install --enable-shared
24
25
26 === HS-JAVA ===
27 for `hs-java' a patched build is needed:
28         $ git clone git://wien.tomnetworks.com/hs-java.git
29         $ cd hs-java
30         $ git checkout -t origin/v0.2
31         $ cabal configure --enable-shared
32         $ cabal build
33         $ cabal install --enable-shared
34 hint: for some unknown reason yet, it seems building from source will be easier
35 if you first install `hs-java' via cabal (like `harpy' above)
36
37
38 === MISC ===
39         $ cabal install missingh --enable-shared
40         $ cabal install heap --enable-shared
41         $ cabal install plugins --enable-shared
42
43
44 == NOTE ==
45 unfortunately, many haskell libaries arn't tested very well, so building
46 libraries from hackage can be a very painful trip.
47
48 some system configurations we had success building all required
49 libraries (yes, no x86_64 so far!):
50         $ uname -a
51         Linux hermann 2.6.32-22-generic-pae #36-Ubuntu SMP Thu Jun 3 23:14:23 UTC
52         2010 i686 GNU/Linux
53         $ cat /etc/issue
54         Ubuntu 10.04.4 LTS \n \l
55         $ ghc --version
56         The Glorious Glasgow Haskell Compilation System, version 6.12.1
57         $ gcc --version
58         gcc (Ubuntu 4.4.3-4ubuntu5.1) 4.4.3
59         Copyright (C) 2009 Free Software Foundation, Inc.
60         This is free software; see the source for copying conditions.  There is NO
61         warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
62         $ ghc-pkg list
63         /var/lib/ghc-6.12.1/package.conf.d:
64                 Cabal-1.8.0.2
65                 array-0.3.0.0
66                 base-3.0.3.2
67                 base-4.2.0.0
68                 bin-package-db-0.0.0.0
69                 bytestring-0.9.1.5
70                 containers-0.3.0.0
71                 directory-1.0.1.0
72                 (dph-base-0.4.0)
73                 (dph-par-0.4.0)
74                 (dph-prim-interface-0.4.0)
75                 (dph-prim-par-0.4.0)
76                 (dph-prim-seq-0.4.0)
77                 (dph-seq-0.4.0)
78                 extensible-exceptions-0.1.1.1
79                 filepath-1.1.0.3
80                 (ghc-6.12.1)
81                 (ghc-binary-0.5.0.2)
82                 ghc-prim-0.2.0.0
83                 haskell98-1.0.1.1
84                 hpc-0.5.0.4
85                 integer-gmp-0.2.0.0
86                 old-locale-1.0.0.2
87                 old-time-1.0.0.3
88                 pretty-1.0.1.1
89                 process-1.0.1.2
90                 random-1.0.0.2
91                 rts-1.0
92                 syb-0.1.0.2
93                 template-haskell-2.4.0.0
94                 time-1.1.4
95                 unix-2.4.0.0
96                 utf8-string-0.3.4
97
98         /home/lewurm/.ghc/i386-linux-6.12.1/package.conf.d:
99                 Cabal-1.10.2.0
100                 HTTP-4000.2.3
101                 binary-0.5.1.0
102                 binary-state-0.1.1
103                 control-monad-exception-0.10.1
104                 data-binary-ieee754-0.4.2.1
105                 deepseq-1.3.0.0
106                 disassembler-0.1.0.1
107                 failure-0.2.0.1
108                 harpy-0.4.3.0
109                 hs-java-0.2
110                 monadloc-0.6
111                 mtl-1.1.1.1
112                 mtl-2.1
113                 network-2.3.0.11
114                 parsec-2.1.0.1
115                 parsec-3.1.2
116                 text-0.11.2.0
117                 transformers-0.3.0.0
118                 zlib-0.5.3.3
119
120
121         $ uname -a
122         Linux matevm-dev 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:41:14 UTC 2012 i686 athlon i386 GNU/Linux
123         $ cat /etc/issue
124         Ubuntu 12.04 LTS \n \l
125         $ ghc --version
126         The Glorious Glasgow Haskell Compilation System, version 7.4.1
127         $ gcc --version
128         gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
129         Copyright (C) 2011 Free Software Foundation, Inc.
130         This is free software; see the source for copying conditions.  There is NO
131         warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
132         $ ghc-pkg list
133         /var/lib/ghc/package.conf.d:
134                 Cabal-1.14.0
135                 array-0.4.0.0
136                 base-4.5.0.0
137                 bin-package-db-0.0.0.0
138                 binary-0.5.1.0
139                 bytestring-0.9.2.1
140                 containers-0.4.2.1
141                 deepseq-1.3.0.0
142                 directory-1.1.0.2
143                 extensible-exceptions-0.1.1.4
144                 filepath-1.3.0.0
145                 (ghc-7.4.1)
146                 ghc-prim-0.2.0.0
147                 (haskell2010-1.1.0.1)
148                 (haskell98-2.0.0.1)
149                 hoopl-3.8.7.3
150                 hpc-0.5.1.1
151                 integer-gmp-0.4.0.0
152                 old-locale-1.0.0.4
153                 old-time-1.1.0.0
154                 pretty-1.1.1.0
155                 process-1.1.0.1
156                 rts-1.0
157                 template-haskell-2.7.0.0
158                 time-1.4
159                 unix-2.5.1.0
160
161         /home/lewurm/.ghc/i386-linux-7.4.1/package.conf.d:
162                 HUnit-1.2.4.2
163                 MissingH-1.1.1.0
164                 QuickCheck-2.4.2
165                 binary-state-0.1.1
166                 control-monad-exception-0.10.2
167                 data-binary-ieee754-0.4.2.1
168                 disassembler-0.1.0.1
169                 failure-0.2.0.1
170                 ghc-paths-0.1.0.8
171                 harpy-0.4.3.0
172                 haskell-src-1.0.1.5
173                 heap-1.0.0
174                 hs-java-0.2
175                 hslogger-1.1.5
176                 monadloc-0.6
177                 mtl-1.1.1.1
178                 mtl-2.1.1
179                 network-2.3.0.13
180                 parsec-2.1.0.1
181                 plugins-1.5.2.1
182                 random-1.0.1.1
183                 regex-base-0.93.2
184                 regex-compat-0.95.1
185                 regex-posix-0.95.1
186                 syb-0.3.6.1
187                 transformers-0.3.0.0
188                 utf8-string-0.3.7