]>
Commit | Line | Data |
---|---|---|
eb6e1838 | 1 | <html> |
2 | <head> | |
3 | <link rel="stylesheet" type="text/css" href="http://www.splint.org/splint.css" title="style1"> | |
4 | <title>Splint - Source Code Installation</title> | |
5 | </head> | |
6 | <body> | |
7 | <!--#include virtual="header.html"--> | |
8 | ||
9 | <body> | |
10 | <center><h2> | |
11 | Source Code Installation | |
12 | </h2></center> | |
13 | <p> | |
14 | ||
15 | <p> | |
16 | Splint should compile effortlessly on standard Unix systems, and with | |
17 | a bit of effort on non-Unix platforms. If you produce a port for a | |
18 | non-Unix platform, please let <a | |
19 | href="mailto:splint@cs.virginia.edu"><em>splint@cs.virginia.edu</em></a> | |
20 | know. <p> | |
21 | ||
22 | <p> | |
23 | To build Splint you need: | |
24 | <ul> | |
25 | <li> a (hopefully ANSI-conforming) C compiler. GNU <tt>gcc</tt> is recommended, | |
26 | but most modern C compilers should work. | |
27 | <li> <tt>make</tt>, the GNU make utility. If you don't have <tt>make</tt> installed on your system, download it from <tt>ftp.gnu.org</tt>. | |
28 | <li> standard Unix tools: <tt>gzip</tt>, <tt>tar</tt> | |
29 | </ul> | |
30 | ||
31 | <p> | |
32 | Instructions: | |
33 | <ol> | |
34 | ||
35 | <li> | |
36 | Download | |
36ba812d | 37 | <a href="http://www.splint.org/downloads/splint-3.1.1.src.tgz"><em>http://www.splint.org/downloads/splint-3.1.1.tgz</em></a>. |
eb6e1838 | 38 | |
39 | </a> (the latest stable release). | |
40 | <p> | |
41 | Copy this package to the directory where you want to build Spint. When | |
36ba812d | 42 | the tar file is extracted, it will create a splint-3.1.1 subdirectory. |
eb6e1838 | 43 | <p> |
36ba812d | 44 | <li><tt>tar xzf splint-3.1.1.src.tgz</tt> (extract files from the archive) |
eb6e1838 | 45 | <p> |
36ba812d | 46 | <li><tt>cd splint-3.1.1</tt> (enter the extracted directory) |
eb6e1838 | 47 | <p> |
48 | <li><tt>configure</tt> | |
49 | <blockquote> | |
50 | This will create a Makefile with settings for your system. Use | |
51 | <tt>configure --prefix=<em>directory</em></tt> if you want to install | |
52 | Splint in prefix directory <em>directory</em>. | |
53 | </blockquote> | |
54 | <p> | |
55 | <li><tt>make</tt> | |
56 | <blockquote> | |
57 | GNU's make utility is required; it may be named | |
58 | <tt>gmake</tt> or <tt>gnumake</tt> on your system. | |
59 | It is best to do this in an emacs shell or a buffered terminal, | |
60 | so you can scroll through the output. | |
61 | <p> | |
62519f05 | 62 | This builds Splint. |
eb6e1838 | 63 | <p> |
64 | If the build was successful, it then runs the test | |
65 | suite. You should see: | |
66 | <blockquote> | |
67 | <pre> | |
36ba812d | 68 | Testing splint 3.1.1... |
eb6e1838 | 69 | |
70 | Version Info: | |
36ba812d | 71 | Splint 3.1.1 --- 11 Feb 2002 |
eb6e1838 | 72 | |
6e3f87f6 | 73 | Maintainer: splint-bug@splint.org |
eb6e1838 | 74 | |
75 | <em>... (about 100 lines of test output elided)</em> | |
76 | ||
77 | Checking manual... | |
78 | Checking tests2.2... | |
79 | Checking tests2.4... | |
80 | Checking tests2.5... | |
81 | Checking db1... | |
82 | Checking db2... | |
83 | Checking db3... | |
84 | </pre> | |
85 | </blockquote> | |
86 | ||
87 | Examine the test output. If there are errors, send a bug report to <a | |
88 | href="mailto:splint-bug@cs.virginia.edu"><em>splint-bug@cs.virginia.edu</em></a>. | |
89 | </blockquote> | |
16033af5 | 90 | <blockquote> |
91 | Note: If possible do not built splint in a directory under /usr/. If the test suite is run in a directory under /usr/ for example /usr/src/, it will report errors even if Splint was built correctly. | |
92 | </blockquote> | |
eb6e1838 | 93 | <p> |
94 | </ol> | |
95 | ||
16033af5 | 96 | The remaining steps are only necessary if you want to install the Splint |
eb6e1838 | 97 | binary and libraries in a different directory (set when you ran |
98 | configure). | |
99 | <p> | |
100 | <blockquote> | |
101 | <ol start = 6> | |
102 | ||
103 | <li> <tt>make install</tt> | |
104 | ||
105 | <li>Set environment variables: | |
106 | <blockquote> | |
107 | <tt>LARCH_PATH</tt> - path to search for splint libraries and | |
108 | initializations files. If you are using the standard directories, this | |
36ba812d | 109 | should be <tt>.:<em>base-directory</em>/splint-3.1.1/lib</tt>. |
eb6e1838 | 110 | <p> |
111 | <tt>LCLIMPORTDIR</tt> - directory containing lcl imports files. If you are using | |
36ba812d | 112 | the standard directories, this is <tt><em>base-directory</em>/splint-3.1.1/imports</tt>. |
eb6e1838 | 113 | </blockquote> |
114 | Put the commands to set these variables (the actual commands will depend | |
115 | on the shell you are using) in one of your initialization dotfiles | |
116 | (usually <tt>~/.environment</tt>). | |
117 | <p> | |
118 | Set up your <tt>PATH</tt> to include the directory containing | |
36ba812d | 119 | <tt>splint-3.1.1/bin/splint</tt>, or move the binary to a directory on |
eb6e1838 | 120 | your command path. |
121 | <p> | |
122 | </blockquote> | |
123 | ||
124 | <p> | |
125 | <!--#include virtual="footer.html"--> | |
126 | ||
127 | ||
128 | ||
129 | ||
130 | ||
131 | ||
132 | ||
133 |