Mercurial > cgi-bin > hgweb.cgi > ImagePrep
annotate Building.html @ 27:404eb7e57fe6
Standardize things for Linux packaging.
author | David Barts <n5jrn@me.com> |
---|---|
date | Fri, 25 Dec 2020 18:58:45 -0800 |
parents | |
children |
rev | line source |
---|---|
27
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
1 <!DOCTYPE html> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
2 <!-- Skeleton or template web page, in the standard style. --> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
3 <html> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
4 <head> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
5 <meta http-equiv="content-type" content="text/html; charset=UTF-8"> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
6 <title>Building ImagePrep</title> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
7 <style> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
8 html { font-family: "TeX Gyre Schola", serif; } |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
9 h1, h2, h3, h4, h5, h6 { font-family: "Avenir Next", sans-serif; } |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
10 pre, code, kbd, samp { font-family: "Menlo", monospace; ; font-size: 85%; } |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
11 </style> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
12 </head> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
13 <body> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
14 <h1>Building ImagePrep</h1> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
15 <p>ImagePrep is a pure Java application. As such it is easy to build:</p> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
16 <ol> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
17 <li>Install prerequisites:</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
18 <ol type="a"> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
19 <li><a href="https://ant.apache.org/">Apache Ant</a></li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
20 <li><a href="http://launch4j.sourceforge.net/">Launch4j</a>, if you are |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
21 building on Windows</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
22 <li>Java JDK 1.8 or better (see notes below).</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
23 <li><a href="https://kotlinlang.org/">Kotlin</a></li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
24 </ol> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
25 <li>Type <code>ant clean</code> to be sure you’re starting with a clean |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
26 slate.</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
27 <li>Use one of the following commands:</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
28 <ol type="a"> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
29 <li><code>ant jar</code> — to build a “fat JAR” containing the |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
30 application (and the Kotlin runtime)</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
31 <li><code>ant macapp</code> — to build a Macintosh application</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
32 <li><code>ant deb</code> — to build a Debian package for the Gnome |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
33 desktop</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
34 <li><code>ant winapp</code> — to build a Windows application (requires <a |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
35 href="http://launch4j.sourceforge.net/">Launch4j</a>)</li> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
36 </ol> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
37 </ol> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
38 <h2>Which Version of Java to Use?</h2> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
39 <p>In short, Java 1.8. Most systems don’t yet have OpenJDK 11 or greater |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
40 installed, so using a compiler newer than 1.8 is asking for trouble. All |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
41 code <em>should</em> build on OpenJDK 11 or greater, with the exception |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
42 of the OS-dependent code for the Macintosh (which will have to be recoded |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
43 to use the <code>java.awt.Desktop</code> class). The latter would be a |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
44 net win, as it is portable, and would spell the death of the only bit of |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
45 OS-dependent Kotlin code in this application.</p> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
46 <p></p> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
47 <ol> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
48 <ol type="a"> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
49 </ol> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
50 </ol> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
51 </body> |
404eb7e57fe6
Standardize things for Linux packaging.
David Barts <n5jrn@me.com>
parents:
diff
changeset
|
52 </html> |