-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinstructions.txt
82 lines (60 loc) · 2.65 KB
/
instructions.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
===============================
VM instructions
===============================
;; To compile the virtual machine we first need to install a few packages, namely:
- MPI (with MPICXX)
- Boost (must include boost-thread, boost-system-mt, boost-date-time-mt, boost-regex-mt, boost-serialization-mt and boost-mpi-mt)
;; Use your operating system facilities to install such packages.
;; on my (seth's) ubuntu (64-bit) system:
;; sudo apt-get install mpi-default-dev
;; sudo apt-get install libboost-all-dev
;;
;; Now, we'll download the virtual machine source code:
$ git clone https://github.com/flavioc/meld.git
;; Let's compile the virtual machine:
$ cd meld
$ make
;; To run a program
$ ./meld -f <byte code file> -c sched
;; Where sched is either sl, th or thp
;; Both tl and tlp need the number of threads, thus to use 4 threads with tl you do:
$ ./meld -f file.m -c tl4
;; To measure execution time, add -t to the command line.
;; To see the final contents of the database, add -d or -s
===============================
Compiler instructions
===============================
;; First and foremost, install sbcl using the operating systems facilities
;; On my mac, I use brew install sbcl.
;; Now let's install all the required sbcl packages, load sbcl by typing:
$ sbcl
;; Type the following instructions into SBCL, one by one:
(require 'asdf)
(require 'asdf-install)
(asdf-install:install :cl-ppcre)
(asdf-install:install :cl-yacc)
(asdf-install:install :cl-lex)
(asdf-install:install :arnesi)
(asdf-install:install :alexandria)
(asdf-install:install :flexi-streams)
;; For every asdf-install:install you may choose to install system-wide or just for the current user
;; I recommend selecting user installation
;; If gpg authentication is required then press 0 to skip
;; If "Component xxx not found" just select 0: reinitialize source registry and retry
;; We also need to install ieee-floats, but asdf-install fails to do this...
;; We need to do this by hand:
$ cd ~/.sbcl/site
$ git clone https://github.com/marijnh/ieee-floats.git
$ ln -sf $HOME/.sbcl/site/ieee-floats/ieee-floats.asd ~/.sbcl/systems/
;; Now it's time to download cl-meld:
$ cd ~
$ git clone https://github.com/flavioc/cl-meld.git
;; Before you can load up the compiler, you need to patch CL-Yacc so that it supports comments in the source code:
$ cd ~/.sbcl/site/cl-yacc-0.3
$ patch -p0 < ~/cl-meld/yacc-comments.patch
$ cd ~/cl-meld
$ sbcl
;; Type in: (load "load") and you'll see several messages (it's just sbcl compiling and loading everything)
;; To compile a file, just do this:
(cl-meld:meld-compile "path-to-file.meld" "path-to-output-file")
;; If everything went ok you should see "All done. T"