blob: e48114b95b49bac19ac19eff3af89ac308f9d350 [file] [log] [blame]
swissChilie392aeb2020-08-10 15:52:10 -07001<html>
2 <head>
3 <meta name="viewport" content="width=device-width">
4 <link rel="stylesheet"
5 href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/styles/default.min.css">
6 <link rel="stylesheet" href="styles.css">
7 <title>Building</title>
8 </head>
9 <body>
10 <main class="split container">
11 <div class="sidebar">
12 <h2><a href="/">6502</a></h2>
13
14 <p>
15 6502 Toolchain written by <a href="https://github.com/swissChili">swissChili</a>
16 </p>
17
18 <ul>
19 <li><a href="https://github.com/swissChili/6502">Git</a></li>
20 <li><a href="/usage.html">Basic usage</a></li>
21 <li><a href="/examples.html">Example programs</a></li>
22 <li><a href="/building.html">Building from source</a></li>
23 </ul>
24 </div>
25 <div class="body">
26 <h1> Building from source</h1>
27You need the following libraries installed to build the emulator:
28<br>
29<code>pthread</code> <code>rt</code> <code>m</code> <code>SDL2</code> <code>GL</code> <code>GLEW</code> <code>GLU</code> <code>readline</code>
30<br>
31The first three will be included on any POSIX compliant operating system (OS X, Linux, BSD, etc).
32To install SDL2, visit its <a href="https://www.libsdl.org/">website</a> or use your distributions
33package manager.
34<br>
35<br>
36You also need <code>awk</code> installed if you want to modify the <code>6502.csv</code> file from which parts of the
37emulator are generated. If you don't want to do this, run cmake with <code>-DGEN_INSTRUCTIONS_HEADER=OFF</code>
38<br>
39<br>
40You may be able to build this on Windows using Cygwin or MinGW, but I haven't tested that.
41<br>
42<br>
43Run the usual commands to build with cmake:
44<pre><code class>$ mkdir build
45$ cd build
46$ cmake ..
47$ make -j
48$ ./6502 # you built it, nice</code></pre>
49 </div>
50 </main>
51
52 <script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.18.1/highlight.min.js"></script>
53 <script>
54 document.addEventListener('DOMContentLoaded', (event) => {
55 document.querySelectorAll('pre code').forEach((block) => {
56 hljs.highlightBlock(block);
57 });
58 });
59 </script>
60 </body>
61</html>