]>
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 | |
6e3f87f6 | 37 | <a href="http://www.splint.org/downloads/splint-3.0.1.6.src.tgz"><em>http://www.splint.org/downloads/splint-3.0.1.6.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 | |
6e3f87f6 | 42 | the tar file is extracted, it will create a splint-3.0.1.6 subdirectory. |
eb6e1838 | 43 | <p> |
6e3f87f6 | 44 | <li><tt>tar xzf splint-3.0.1.6.src.tgz</tt> (extract files from the archive) |
eb6e1838 | 45 | <p> |
6e3f87f6 | 46 | <li><tt>cd splint-3.0.1.6</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> | |
62 | This builds Splint. While it is building, subscribe to the | |
63 | lclint-announce mailing list by sending a message to <a | |
64 | href="mailto:majordomo@virginia.edu"><em>majordomo@virginia.edu</em></a> | |
65 | containing the body: | |
66 | <pre> | |
67 | subscribe lclint-announce | |
68 | </pre> | |
69 | <p> | |
70 | If the build was successful, it then runs the test | |
71 | suite. You should see: | |
72 | <blockquote> | |
73 | <pre> | |
6e3f87f6 | 74 | Testing splint 3.0.1.6... |
eb6e1838 | 75 | |
76 | Version Info: | |
6e3f87f6 | 77 | Splint 3.0.1.6 --- 11 Feb 2002 |
eb6e1838 | 78 | |
6e3f87f6 | 79 | Maintainer: splint-bug@splint.org |
eb6e1838 | 80 | |
81 | <em>... (about 100 lines of test output elided)</em> | |
82 | ||
83 | Checking manual... | |
84 | Checking tests2.2... | |
85 | Checking tests2.4... | |
86 | Checking tests2.5... | |
87 | Checking db1... | |
88 | Checking db2... | |
89 | Checking db3... | |
90 | </pre> | |
91 | </blockquote> | |
92 | ||
93 | Examine the test output. If there are errors, send a bug report to <a | |
94 | href="mailto:splint-bug@cs.virginia.edu"><em>splint-bug@cs.virginia.edu</em></a>. | |
95 | </blockquote> | |
16033af5 | 96 | <blockquote> |
97 | 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. | |
98 | </blockquote> | |
eb6e1838 | 99 | <p> |
100 | </ol> | |
101 | ||
16033af5 | 102 | The remaining steps are only necessary if you want to install the Splint |
eb6e1838 | 103 | binary and libraries in a different directory (set when you ran |
104 | configure). | |
105 | <p> | |
106 | <blockquote> | |
107 | <ol start = 6> | |
108 | ||
109 | <li> <tt>make install</tt> | |
110 | ||
111 | <li>Set environment variables: | |
112 | <blockquote> | |
113 | <tt>LARCH_PATH</tt> - path to search for splint libraries and | |
114 | initializations files. If you are using the standard directories, this | |
6e3f87f6 | 115 | should be <tt>.:<em>base-directory</em>/splint-3.0.1.6/lib</tt>. |
eb6e1838 | 116 | <p> |
117 | <tt>LCLIMPORTDIR</tt> - directory containing lcl imports files. If you are using | |
6e3f87f6 | 118 | the standard directories, this is <tt><em>base-directory</em>/splint-3.0.1.6/imports</tt>. |
eb6e1838 | 119 | </blockquote> |
120 | Put the commands to set these variables (the actual commands will depend | |
121 | on the shell you are using) in one of your initialization dotfiles | |
122 | (usually <tt>~/.environment</tt>). | |
123 | <p> | |
124 | Set up your <tt>PATH</tt> to include the directory containing | |
6e3f87f6 | 125 | <tt>splint-3.0.1.6/bin/splint</tt>, or move the binary to a directory on |
eb6e1838 | 126 | your command path. |
127 | <p> | |
128 | </blockquote> | |
129 | ||
130 | <p> | |
131 | <!--#include virtual="footer.html"--> | |
132 | ||
133 | ||
134 | ||
135 | ||
136 | ||
137 | ||
138 | ||
139 |