view 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
line wrap: on
line source

<!DOCTYPE html>
<!-- Skeleton or template web page, in the standard style. -->
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <title>Building ImagePrep</title>
    <style>
html { font-family: "TeX Gyre Schola", serif; }
h1, h2, h3, h4, h5, h6 { font-family: "Avenir Next", sans-serif; }
pre, code, kbd, samp { font-family: "Menlo", monospace; ; font-size: 85%; }
    </style>
  </head>
  <body>
    <h1>Building ImagePrep</h1>
    <p>ImagePrep is a pure Java application. As such it is easy to build:</p>
    <ol>
      <li>Install prerequisites:</li>
      <ol type="a">
        <li><a href="https://ant.apache.org/">Apache Ant</a></li>
        <li><a href="http://launch4j.sourceforge.net/">Launch4j</a>, if you are
          building on Windows</li>
        <li>Java JDK 1.8 or better (see notes below).</li>
        <li><a href="https://kotlinlang.org/">Kotlin</a></li>
      </ol>
      <li>Type <code>ant clean</code> to be sure you’re starting with a clean
        slate.</li>
      <li>Use one of the following commands:</li>
      <ol type="a">
        <li><code>ant jar</code> — to build a “fat JAR” containing the
          application (and the Kotlin runtime)</li>
        <li><code>ant macapp</code> — to build a Macintosh application</li>
        <li><code>ant deb</code> — to build a Debian package for the Gnome
          desktop</li>
        <li><code>ant winapp</code> — to build a Windows application (requires <a
            href="http://launch4j.sourceforge.net/">Launch4j</a>)</li>
      </ol>
    </ol>
    <h2>Which Version of Java to Use?</h2>
    <p>In short, Java 1.8. Most systems don’t yet have OpenJDK 11 or greater
      installed, so using a compiler newer than 1.8 is asking for trouble. All
      code <em>should</em> build on OpenJDK 11 or greater, with the exception
      of the OS-dependent code for the Macintosh (which will have to be recoded
      to use the <code>java.awt.Desktop</code> class). The latter would be a
      net win, as it is portable, and would spell the death of the only bit of
      OS-dependent Kotlin code in this application.</p>
    <p></p>
    <ol>
      <ol type="a">
      </ol>
    </ol>
  </body>
</html>