forked from chapel-lang/chapel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
144 lines (94 loc) · 5 KB
/
README
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
===============================
Chapel Compiler Release: README
===============================
This is the 1.11.0 release of the Chapel compiler, intended to give
potential users a look at what we're doing and the opportunity to
provide us with feedback. See the LICENSE file for the release's
licensing terms.
-----------
Quick Start
-----------
The following instructions are designed to get you up and running with
Chapel with a minimum of fuss. Note that building and using Chapel in
this mode disables enhanced runtime options and optional language
capabilities in the interest of a simple and clean build.
0) See doc/README.prereqs for more information about packages you
might need to have installed for Chapel to work.
1) Make sure that your shell is in the directory containing this
README file. For example:
cd ~/chapel-1.11.0
2) Set up your environment to use Chapel in "Quick Start" mode.
If you use... then type...
...a bash-compatible shell (bash/zsh) source util/quickstart/setchplenv.bash
...a csh-compatible shell (csh/tcsh) source util/quickstart/setchplenv.csh
...the fish shell (fish) . util/quickstart/setchplenv.fish
...the Bourne shell (sh) . util/quickstart/setchplenv.sh
You must be in the top-level Chapel directory for these command
scripts to work properly. Note that there is no requirement to use
these scripts long-term, they are merely designed to get new users
up and running quickly. See doc/README.chplenv for a complete
description of Chapel's environment variables and their options.
If you use a shell other than the ones listed above and are able to
create an equivalent util/quickstart/setchplenv.* script for it,
please consider contributing a copy of it back to the project for
inclusion in the next release.
3) Build the compiler and runtime libraries using:
gmake
or if your default make is GNU make compatible (as on Mac OS X or
Cygwin), use:
make
Parallel build execution (e.g. `gmake -j`) is supported.
4) csh/tcsh users only: Update your shell's path cache using:
rehash
5) To ensure you have installed Chapel properly, you can optionally
run an automatic sanity check using a few example programs:
gmake check
or:
make check
6) Compile an example program using:
chpl -o hello examples/hello.chpl
7) Execute the resulting executable:
./hello
8) Experiment with Chapel in Quick Start mode to your heart's content.
Once you are comfortable with Chapel and interested in using a
full-featured version in the preferred configuration:
a) Open up a new shell to avoid inheriting the previous environment
settings.
b) Repeat steps 1-7 above, but in Step 2, use util/setchplenv.*
instead of util/quickstart/setchplenv.*
This will set up your environment to use Chapel in the preferred
configuration. Making this configuration will involve building one
or more third-party packages which will increase the overall build
time. If you run into any portability issues, please let us know
at chapel_info@cray.com.
9) If you plan to do performance studies of Chapel programs, be sure
to (a) use the full-featured version and (b) read the PERFORMANCE
file in this directory to avoid common pitfalls.
------------
What's next?
------------
For more detailed information about... refer to...
...changes since the last release ... CHANGES
...implementation status ... STATUS
...performance status ... PERFORMANCE
...Chapel's file and directory structure ... README.files
...prerequisites for using this release ... doc/README.prereqs
...setting Chapel environment variables ... doc/README.chplenv
...building the compiler ... doc/README.building
...using the compiler ... doc/README.compiling
...executing Chapel programs ... doc/README.executing
...reporting bugs ... doc/README.bugs
...Chapel modes for emacs and vim ... etc/README
...example Chapel programs ... examples/README
...a quick reference for Chapel syntax ... doc/quickReference.pdf
...the Chapel language specification ... doc/chapelLanguageSpec.pdf
...executing programs on multiple locales ... doc/README.multilocale
...how Chapel tasks are mapped to threads ... doc/README.tasks
...using Chapel on a specific platform...
...a Cray system ... doc/platforms/README.cray
...Cygwin over Windows ... doc/platforms/README.cygwin
...an IBM system ... doc/platforms/README.ibm
...an SGI Altix system ... doc/platforms/README.sgi
...calling C code from Chapel ... doc/technotes/README.extern
...other user and technical notes ... doc/README
...third-party software that we use ... third-party/README