ToCDocOverviewCGDocRelNotesFAQIndexPermutedIndex
Allegro CL version 10.1
Significant update since the initial 10.1 release.
10.0 version

Installation of Allegro CL 10.1 and related products

This document contains the following sections:

1.0 Installation introduction
   1.1 Definitions of some terms used in this document
   1.2 Installation sizes and supported Operating System versions
2.0 Preinstallation Steps
   2.1 You can leave Allegro CL 10.0 installed
3.0 Installation steps
4.0 Notes for installation of Allegro CL on UNIX (including Linux)
   4.1 Supported versions of GTK on Linux
   4.2 Installing Allegro CL 32-bit on Linux Mint
   4.3 Getting 32-bit Allegro CL to run on 64-bit Fedora 25 and later
   4.4 Getting 32-bit Allegro CL to run on 64-bit Ubuntu
   4.5 Allegro CL may have problems starting up when run on SELinux
   4.6 Testing that the installation of Allegro CL on Unix was successful
5.0 Installation on Windows
   5.1 Testing that the installation of Allegro CL on Windows was successful
6.0 Installation on macOS
   6.1 Installing GTK and Open Motif on macOS
      6.1.1 Installing X11 and GTK on macOS
      6.1.2 X11/XQuartz and macOS 10.9 (Mavericks)
      6.1.3 Installing OpenMotif on macOS
   6.2 Installing OpenSSL on macOS
      6.2.1 Installing OpenSSL using MacPorts
      6.2.2 Installing OpenSSL using Brew
      6.2.3 Loading the :ssl module into Allegro CL
      6.2.4 System Integrity Protection (SIP)
      6.2.5 Running under GNU Emacs
      6.2.6 Troubleshooting
   6.3 Testing that the installation of Allegro CL on macOS was successful
   6.4 Warning about XQuartz's Full-screen mode
7.0 Installation of Allegro CL Express on macOS
8.0 Installing Emacs from the web
9.0 Installing OpenSSL libraries
10.0 Other Allegro CL products
11.0 Getting a license file
12.0 Installing source code

This document describes installation of regular Allegro Common Lisp and related products. Installation of the free Allegro Common Lisp Express is described in express-installation.html

Allegro CL 10.1 is provided in two versions on those platforms which support SMP: an SMP version which can use more than one hardware processor at a time and a non-SMP version which (like all versions of Allegro CL prior to 9.0) uses only one processor. These two versions have separate downloads: that is you download and install each individually. Please also note:

For each distribution, the installation process of Allegro CL 10.1 is similar to installation of previous versions of Allegro CL such as Allegro CL 10.0. Mac users should note that the various tools relating to running X (such as XQuartz) may need to be installed or reinstalled.

Apple macOS Users: The Allegro CL IDE and Common Graphics application require XQuartz but do not work with XQuartz 2.8.0 or later at this time. You must use XQuartz 2.7.11 or earlier. See Section 6.1 Installing GTK and Open Motif on macOS for more information.
Apple macOS Users: macOS versions 10.15 (Catalina) and later do NOT support 32-bit apps so Allegro CL 32-bit Professional will not work on macOS 10.15 or later. Professional users should contact sales@franz.com for options.
Allegro CL 32-bit Lisp users: please see Section 4.2 Installing Allegro CL 32-bit on Linux Mint.


1.0 Installation introduction

This document describes how to install Allegro CL and related products.

Allegro CL is downloaded. Customers receive instructions on how to download Allegro CL 10.1 over the net.

You can install Allegro CL from the download without any key or code (though you need a license file, as described below, in order to use Allegro CL). Once Allegro CL is installed, the documentation, including this file, is available in the doc/ subdirectory (this file is doc/installation.htm). A copy of this file is also available on the Franz Inc. web site (franz.com).

All types (Professional, Enterprise, etc.) of Allegro CL for a particular platform and all add-on products are downloaded onto your computer. A license file named devel.lic controls which products will be usable. This license file is supplied separately, as described in Section 11.0 Getting a license file. Allegro CL will not work without a license file properly installed in the Allegro directory. The download does not contain a license file. You must obtain a license file from Franz Inc. separately from the download.

If you do not have a license file or the license file you have does not seem to license the correct product mix, contact your Account Manager for information. (If that link does not work, call Franz Inc. in California, USA, at +1 510-452-2000 or send email to support@franz.com or info@franz.com. In email, be sure to identify yourself and provide information on how you can be contacted.)

Once you have installed Allegro CL and the license file is in place, you can use the licensed Allegro CL version and all licensed add-on products. If you upgrade your Allegro CL version, or purchase a license for an add-on product, you will be given an updated license file. You do not have to download further material (except in rare instances or when you have obtained a license for another platform). Simply installing the new license file makes the newly licensed products available for use.


1.1 Definitions of some terms used in this document


1.2 Installation sizes and supported Operating System versions

The size of the Allegro directory after installation is approximately 250 Mbytes on UNIX/Linux/macOS and 225 Mbytes on Windows. More space may be required during installation for temporary files.

The minimal supported versions of the operating systems on platforms where Allegro CL runs are listed below. Allegro CL will generally work without change on operating system versions released after the release of Allegro CL 10.1. If you have a problem, contact support@franz.com for assistance.

64-bit platforms

32-bit platforms



2.0 Preinstallation Steps

Before installing Allegro CL, consider the following:

  1. Note for Ubuntu users: Because Ubuntu no longer supports 32-bit libraries, 32-bit Allegro CL requires special action. See Section 4.4 Getting 32-bit Allegro CL to run on 64-bit Ubuntu for more information.
  2. You need not uninstall Allegro CL 10.0 See Section 2.1 You can leave Allegro CL 10.0 installed.

2.1 You can leave Allegro CL 10.0 installed

It is not necessary to delete version 10.0 if you have that installed, but note that on Windows, the registry will be updated so extensions (such as .lpr and .dxl) refer to Allegro CL 10.1 instead of earlier versions.



3.0 Installation steps

If you have the Allegro CL Express Edition, see express-installation.html.

Here are the installation steps in brief:

  1. Get the license file. See Section 11.0 Getting a license file. You can install without getting a license file but you cannot use the product without a license file.
  2. Download the software. You should have received instructions for downloading from Franz Inc. If not, contact your Account Manager for information. (If that link does not work, call Franz Inc. in California, USA, at +1 510-452-2000 or send email to support@franz.com or info@franz.com. In email, be sure to identify yourself and provide information on how you can be contacted.) We assume below you download the software into /usr/tmp/ on UNIX and C:\\tmp\\ on Windows.

    On UNIX (including Linux and macOS): you download two files, acl101.bz2 and bunzip2. (The [platform] is freebsd or linux-x86 or macosx-x86.) On macOS, you also download a .dmg file. You can install using the .bz2 file as described here or using the .dmg file as described Section 6.0 Installation on macOS.

    On Windows, you download one file, acl101.exe

  3. UNIX (including Linux and macOS): cd into the directory where the software was downloaded. On Solaris, for example, if you downloaded into /usr/tmp/
    % cd /usr/tmp/
    

    See Section 4.0 Notes for installation of Allegro CL on UNIX (including Linux) for more details.

    Windows: find the download executable file in your Windows Explorer.

    macOS: you can use the .dmg file -- go to Section 6.0 Installation on macOS.

  4. Decide where you wish to install the Allegro Directory. On UNIX, the typical location is /usr/local/acl101/. On Windows, the typical location is C:/acl101/. On macOS, the location is and AllegroCL64 (for 64-bit). However, you can choose any location you like.
  5. UNIX: uncompress and untar the distribution file. The command is (using the typical location)
    % ./bunzip2 < acl101.bz2 | (cd /usr/local; tar xf -)
    

    See Section 4.0 Notes for installation of Allegro CL on UNIX (including Linux) for more details on this step.

    Windows: run the exe file. Double click on it if using the Windows Explorer or execute it if at a Command Prompt. Follow the instructions that appear. See Section 5.0 Installation on Windows for full details.

  6. Copy the license file into [Allegro directory]/devel.lic. The license file you obtained in step one above should be copied into the Allegro directory and its name should be changed to devel.lic.
  7. Install Emacs off the web (optional). See Section 8.0 Installing Emacs from the web for details.
  8. Install OpenSSL libraries if desired and available (optional). Users interested in writing applications using secure sockets may wish to install the OpenSSL libraries. See Section 9.0 Installing OpenSSL libraries for instructions and more details.
  9. Test Allegro CL: try to start Allegro CL as described in startup.htm. Lisp may not start up for users running a 32-bit Lisp on Fedora 25 or later: see Section 4.3 Getting 32-bit Allegro CL to run on 64-bit Fedora 25 and later for more information. Lisp may not start up for users running a 32-bit Lisp on Ubuntu: see Section 4.4 Getting 32-bit Allegro CL to run on 64-bit Ubuntu for more information. Users on other OS's who have difficulty at this point, contact support@franz.com for assistance.
  10. Run sys:update-allegro: patches (correcting bugs or providing new features) are released for Allegro CL regularly. For normal usage, we recommend that you update regularly, including immediately after installation. Do this by starting Lisp and evaluating (sys:update-allegro). See sys:update-allegro and also Patches and updates in introduction.htm.


4.0 Notes for installation of Allegro CL on UNIX (including Linux)

Once Allegro CL is installed, see Section 4.6 Testing that the installation of Allegro CL on Unix was successful for information on how to test that Allegro CL is installed properly. Linux users who have trouble starting Allegro CL after installation see Section 4.5 Allegro CL may have problems starting up when run on SELinux.

Also see these documentation files in the doc/ subdirectory to start with:

Common Graphics and the IDE (see cgide.htm) is supported on Linux and macOS. GTK must be installed in order for those products to work. See the note about GTK versions below.

There is no Allegro Composer executable or image file after installation. To use Allegro Composer, evaluate (require :composer) after starting Allegro CL. An Allegro Composer binary can be built by using buildcomposer.cl. See composer.htm.

There is no CLIM image file, but one can be built using buildclim.cl.

Note for CLIM on Linux, FreeBSD: you must have version 2.2 or later of Motif. (Version 2.2 was released in early 2002.) A free version is available from www.openmotif.org. Redhat Linux 7.2 is supplied with Lesstif, a version of Motif that does not work with CLIM. See the Linux architecture specific information in the Allegro CL FAQ for information on how to install Redhat Linux 7.2 without lesstif and how to uninstall lesstif if already present. On all other Unix platforms, CLIM uses the platform-supplied Motif.

Note for CLIM on macOS: you must have version 2.2.2 Motif. This version is available at no charge from www.openmotif.org.

Users wishing to display Japanese characters need the k14 font. As also noted here in release-notes.htm, the k14 font is needed to display Japanese characters in a CLIM demo. This font appears to be missing from most X server font libraries. We are making available a public domain version of this font in the file [Allegro directory]/misc/k14.pcf. Please see your X server documentation for information on how to install this file as a valid font.


4.1 Supported versions of GTK on Linux

We have tested the GTK version of the IDE on Red Hat Enterprise Linux 6.x and 7.x and on CentOS 6.x and 7.x (which are based on the RHEL versions of the same number). The IDE works properly on those Linux versions. However, there are many different Linux distributions and we cannot guarantee the GTK version of the IDE is compatible with all of them. Our ability to support different flavors of Linux is limited.


4.2 Installing Allegro CL 32-bit on Linux Mint

We have reports that the following are needed to get 32-bit working on a 64-bit Linux Mint, in addition to the other apt-get installs:

apt-get install libatk-adaptor:i386 libgail-common:i386
apt-get install gnome-themes-extra gnome-themes-extra:i386

4.3 Getting 32-bit Allegro CL to run on 64-bit Fedora 25 and later

The Fedora Linux operating system, starting with release 25, requires the following steps for 32-bit Allegro CL to run successfully (no additional steps are required for 64-bit Allegro CL). Steps 3 and 4 are for Common Graphics and the IDE. Run each of the following commands:

  1. sudo dnf install libc.i686
  2. sudo dnf install glibc.i686
  3. sudo dnf libcanberra-gtk2-0.30-11.fc24.i686
  4. sudo dnf install PackageKit-gtk-module-1.1.5-1.fc25.i686

4.4 Getting 32-bit Allegro CL to run on 64-bit Ubuntu

The Ubuntu Linux operating system, starting with release 14.04, stopped supplying the 32-bit libraries needed by 32-bit Allegro CL. While 32-bit Allegro CL did continue to work in some cases, particularly when users upgraded to Ubuntu 14.04 (rather than installing it form scratch), we could not figure out a way to ensure in all cases that a user could use 32-bit Allegro CL with Unbuntu 14.04 (and later). As a consequence, we announced that that OS was no longer supported for 32-bit Lisps. (64-bit Allegro CL was not affected.)

Then an Allegro CL user pointed out that there was in fact a way to get 32-bit Allegro CL to work. Here are the steps:

  1. Install Allegro CL as described in the Installation Guide. Try to start the Integrated Development Environment (IDE) up by invoking the allegro executable. If this works, you are done as you have the necessary libraries. If this fails, go to step 2.
  2. Execute the following commands (you need sudo permissions to execute them -- ask your system administrator if necessary):
      sudo dpkg --add-architecture i386
      sudo apt-get update
      sudo apt-get install libc6:i386
      sudo apt-get install libgtk2.0-0:i386
    

    Once these commands complete, 32-bit Allegro CL should work. Contact support@franz.com if you have any problems.


4.5 Allegro CL may have problems starting up when run on SELinux

Security-Enhanced Linux, or SELinux is a feature that is available on many modern versions of Linux and is enabled by default on some. It affects the way shared libraries are loaded and that can prevent Allegro CL from starting up. The error you will likely see is something like:

cannot restore segment prot after reloc: Permission denied

Or the error can be segmentation fault. The solution is to mark the shared object files for special handling or to disable SELinux. See the Linux (Architecture Specific) section of the Allegro CL FAQ for futher details.


4.6 Testing that the installation of Allegro CL on Unix was successful

We will test the installation by starting Allegro CL from a shell prompt. To a shell prompt, enter the full path of the Allegro CL executable (on installation, one of mlisp, alisp, mlisp8, and mlisp8) to the shell prompt.

Assuming the Allegro directory is /usr/local/acl101a/ /usr/local/acl101b/ /usr/local/acl101/ and that you wish to run the mlisp executable, enter:

/usr/local/acl101/mlisp


5.0 Installation on Windows

Download the software

Download the distribution file specific to the platform you are using (this file will have a name like acl100.exe). Download into a location of your choice.

Instructions for Enterprise and Professional versions

  1. Exit all running programs. Installation is most likely to be trouble free if there are no other programs running.
  2. Display the Windows Explorer. Find the acl100.exe file you downloaded.
  3. Double click on acl100.exe to execute it. This starts an installation program. During the installation, dialogs appear asking for input, as described in the next steps.
  4. First dialog: this is an informational dialog telling you again to exit all other running programs and informing you about licenses and copyrights. Click on the Cancel button if you wish to stop the installation (perhaps to exit running programs). Click Next to continue.
  5. Second dialog: this dialog asks you for the location of the Allegro directory. A default is provided: c:/acl100/ on main drive (often C: but can be another drive). If you wish a location other than the default, click on the Browse button and select a directory. If you select an existing directory (not recommended), a warning dialog is displayed saying the directory exists and asking if you want to continue. Once you have selected the desired location for the Allegro directory, click the Next button. You can cancel by clicking the Cancel button.
  6. Third dialog: this dialog asks if you wish to leave out portions of the distribution: the [Allegro CL] documentation (about 26 Mbytes), the ANSI spec documentation (about 11 Mbytes), and contributed files (about 3300 Kbytes). By default, the first two are included and the third left out.

    If you do not install either the Allegro CL documentation and the ANSI spec, shortcuts relating to documentation on the Allegro CL menu item on the Start menu will link you to versions on the Franz Inc. web site. (However, if you have the space, it is best to include the documentation.) If you include the Allegro CL documentation but not the ANSI spec, links from the Allegro CL documentation to the ANSI spec will not work.

    Check or uncheck the desired options. Click Cancel to cancel installation, Back to choose a different location, and Next to continue. If you click Next again, the installation will take place.

  7. A dialog may appear when the installation is finished telling you you must restart the machine to complete the installation and asking if you want to do this now. (Restarting is not always necessary. Clicking Cancel ends the installation process for now and does not restart the machine. If restarting is required and you choose to delay it, do not use Allegro CL until you have restarted. We assume in the subsequent steps you have restarted if necessary.)
  8. Copy the license file into the Allegro directory and change its name to devel.lic.

Run sys:update-allegro

Patches (correcting bugs or providing new features) are released for Allegro CL regularly. For normal usage, we recommend that you update regularly, including immediately after installation. Do this by starting Lisp and evaluating (sys:update-allegro). See sys:update-allegro and also Patches and updates in introduction.htm. After downloading patches completes, you have to run update.exe to finish the update. On Windows, you may need to be running as administrator to call sys:update-allegro. The Windows menu item update.exe (download new updates + rebuild images) will perform both tasks (and ask for administrator privileges if it needs to be administrator to do so).

Allegro CL is now installed. See these documentation files to start with. The documentation is included with the distribution and is on the Franz Inc. Website, specifically here. Links on that page go to the documentation files for your version and also tell you how to download your own copy if desired.

The next section describes how to test the installation on Windows.


5.1 Testing that the installation of Allegro CL on Windows was successful

We will test the installation by starting Allegro CL from the menu. You should see an `Allegro CL 10.0' item on the Programs submenu of the Start menu. That item has a submenu, with (among other items) submenus Modern ACL Images and ANSI ACL Images. We will start a Modern ACL with the IDE in this example.

Choose

Start | Programs | Allegro CL 10.0 | Modern ACL Images | Allegro CL 10.0 (w IDE, Modern)

You should see a splash window and then a window titled `Allegro Common Lisp Console'. Shortly thereafter, the Allegro CL Integrated Development Environment windows appear, typically starting with some dialogs which you must resond to or dismiss (dismissing is okay). After everything is started, your screen will have various windows, including the Debug (i.e. Listener) window shown here:

One of the dialogs that may appear, if you have worked on projects in the IDE in earlier sessions, is the Startup Action dialog, which asks if you want to open one of these recent projects. (We do not show it because we are assuming you have just installed Allegro CL.)

To the prompt cg-user(1):, enter the form (+ 1 2):

cg-user(1): (+ 1 2)
3

You may now either exit Allegro CL by choosing File | Exit (that is, the Exit choice from the File menu) or you may continue using Allegro CL. If you choose to exit, a dialog will appear asking if you really want to exit. Answer Yes.



6.0 Installation on macOS

Installation of Allegro CL Express is described in express-installation.html.

macOS Users: macOS 10.15 (Catalina) and later do NOT support 32-bit apps. So Allegro CL 32-bit Professional will not work on macOS 10.15 and later.
Also on macOS 10.15 (Catalina) or later, it may say that Allegro CL will not run because it is not trusted. This can be fixed either before or after installation, as described in the installation steps.

Allegro CL on macOS is distributed both as a dmg file and as a bz2 file. You may install using the dmg as described in this section, or using the bz2, as described in Section 3.0 Installation steps.

If you are using the IDE, you must install XQuartz and GTK. On macOS's prior to 10.15 (Catalina), both installs are done automatically if needed by the Allegro CL app when you run it but on macOS 10.15 (Catalina) or later one of the programs used to install GTK as supplied with the Allegro CL 10.1 distribution will not run because it is a 32-bit app. See the section Section 6.1.1 Installing X11 and GTK on macOS below for how to install GTK on macOS 10.15 (Catalina) or later.

If you are using CLIM, you must also install Open Motif, as described in Section 6.1 Installing GTK and Open Motif on macOS. The rest of this section assumes you are installing with the dmg file.

The dmg installation has been simplified in release 10.1.

At various points during the installation, you may be asked to authenticate the step by provising an adminstrator username and password. Have these handy and provide them when asked.

There are various dmg files for Allegro CL 10.1, depending on what product you are installing (64 bit with SMP but no IDE, 64-bit without SMP but with IDE, or 32-bit with IDE). The file names are:

Allegro CL requires macOS 10.10 or later. macOS 10.15 (Catalina) and later does not support 32-bit applications such as Allegro CL 32-bit Professional.

Here are the steps for installing Allegro CL on macOS (the first 4 steps are short, the remaining are more complicated):

  1. Download the file to the local hard disk.
  2. [Optional step for Mojave, Catalina and later]: Verify that the download is trusted by opening a shell and executing (replacing acl10.1-macosx-x64.dmg by the actual dmg filename):
    xattr -d com.apple.quarantine ~/Downloads/acl10.1-macosx-x64.dmg
    
    If you skip this step, you can verify that Allegro CL is trusted later in Step 6: Ensuring Allegro CL is trustedstep.
  3. Find the dmg file in the Finder and double-click on it. This will will open the dmg file and and display a window similar to the illustration, which is from the 64-bit non-SMP version -- for other choices, there will be obvious changes (such as 32 instead of 64, SMP appearing, etc.)

  4. Drag the AllegroCL icon to the Applications directory. (The picture shows AllegroCL64 in the picture but your name may be different depending on what you are installing).

Allegro CL will then be installed (a progress bar will be displayed during installation). Once it is done, double click on Applications and you should see an entry for Allegro CL.

Step 5: Installing the License File

Try to start Allegro CL with the IDE. If you need to install the license file, you will get a message like that is the picture (if you do not need a license file or one is already present, Allegro CL will just start up). This will not work when starting mlisp or alisp.

Make sure that you have a valid license file (the license file is supplied separately, as described in Section 11.0 Getting a license file). It need not be named devel.lic (the name will be changed when it is copied).

Click on the Install devel.lic button. You will see a Finder Window. Navigate to your devel.lic file and double click on it. It will be copied to the correct location in the Allegro CL application.

Step 6: Ensuring Allegro CL is trusted (macOS 10.15 (catalina) or later)

It is possible that the system will not consider Allegro CL a trusted application. (You could have ensured it is trusted in the optional step 2 above and you can do it here if required.) If when you try to start Allegro CL, by, for example, double-clicking on the Allegro CL icon in the Dock or in the Applications folder you get a dialog or message saying

"Allegro CL" can’t be opened because Apple cannot check it for malicious software.

do the following:

  1. Open System Preferences | Security and Privacy | General. You should see Allegro CL listed as being blocked.
  2. Click lock to unlock settings
  3. Click Open to allow Allegro CL to run.

Step 7: Installing XQuartz

If XQuartz is not needed or installed, Allegro CL will start up. If XQuartz needs to be installed, you will be prompted to install it. Do so.

Step 7: Installing GTK

If the GTK Frame is not needed or already installed, Allegro CL will start up. If not, you will see a message that the GTK Framework is not installed, as shown in the illustration (a similar message appears if the GTK version is out of date).

Because the built-in installer includes a 32-bit program, it will not work on Catalina (macOS 10.15) or later. If you have a pre-Catalina version, click on Install GTK. There is no progress indicator but installation takes about one minute. If there is a problem with installation you will be notified. The installation runs the .pkg file in the Contents/Resources directory.

If you have macOS 10.15 (Catalina) or later, follow the instructions in Section 6.1.1 Installing X11 and GTK on macOS to install GTK.

Allegro CL should start up when the GTK Framework installation is complete.

Step 8: Download patches

You should download available patches. See sys:update-allegro.


6.1 Installing GTK and Open Motif on macOS

Do not use XQUARTZ 2.8.0 or later. X11 on macOS is provided by the XQuartz program. As this time, Allegro CL does not work with XQuartz 2.8.0 or later, so you must use XQuartz 2.7.11 or earlier. If you have already installed XQuartz 2.8.0 or later, you must uninstall it (see the instructions in the FAQ at https://www.xquartz.org/FAQs.html) and then install XQuartz 2.7.11, available at xquartz.org.

The dmg installation described above takes care of installing GTK. If you are using CLIM, you need to install Open Motif. If you installed using the bz2 file and wish to use the IDE, you need to install GTK as described in this section.

The IDE/Common Graphics require GTK, and CLIM additionally requires the OpenMotif libraries.


6.1.1 Installing X11 and GTK on macOS

You can install X11 by downloading and installing XQuartz. (Look in the Utilities sub-folder of the Applications folder to see if X11 is installed.) If XQuartz is not installed when you try to start Allegro CL with the IDE (which requires XQuartz) you are typically prompted to install it so a separate install should not be necessary.

You are also prompted to install GTK if necessary when you try to run Allegro CL with the IDE. Code included with the distribution will install GTK but this code uses a 32-bit app and so will not run on macOS 10.15 (Catalina) or later. If installation of GTK prompted by Allegro CL fails or if you just want to install GTK separately from running Allegro CL, do the following.

Download https://franz.com/ftp/pub/macosx/GTK+-Framework-2.24.dmg and open it. In the Finder window that pops up, drag the Gtk.framework file onto Frameworks (an alias for /Library/Frameworks) On the right. This will install the GTK framework in the right place on your system.

If you should get an error message about insufficient permissions, it is likely you have an older version of the framework installed. To get rid of the old version, type this into a Terminal window:

 sudo rm -rf /Library/Frameworks/{Gtk,Cairo,GLib}.framework

and retry.

After the Gtk.framework file is installed in this directory, the IDE and Common Graphics (see cgide.htm) will be ready to use.


6.1.2 X11/XQuartz and macOS 10.9 (Mavericks)

When you upgrade a macOS version, you may have to install XQuartz. Note recent version of XQuartz do not work with Allegro CL. See see Section 6.1 Installing GTK and Open Motif on macOS for more information.

The symptom of a broken XQuartz is blank rectangles that should be filled with text in Common Graphics and Gruff displays.


6.1.3 Installing OpenMotif on macOS

The steps are:

  1. Install Apple's Xcode. This may already be installed. If not, download it from developer.apple.com/xcode/ and install.
  2. Install Mac Ports (if necessary). See http://www.macports.org/.
  3. Make sure Mac Ports is setup for universal binaries. Do this by editing the file /opt/local/etc/macports/macports.conf. Make sure the line defining universal_archs contains just i386 and x86_64 (order does not matter). That is make sure the line is either:
    universal_archs i386 x86_64
    

    or

    universal_archs x86_64 i386
    

    If it includes ppc or just i386, then change it to the above. If it includes other architectures, please let us know (support@franz.com) before continuing.

  4. Install Open Motif with the command:
     sudo /opt/local/bin/port install openmotif +universal
    

Installation on macOS is now done. See Section 6.3 Testing that the installation of Allegro CL on macOS was successful, where we show how to test the installation and also how to get the latest patches.


6.2 Installing OpenSSL on macOS

Before doing anything in this document, update your Allegro CL 10.1 installation to include all the latest patches. There have been important updates for this module since the release of 10.1. See sys:update-allegro.

The Allegro CL :ssl module requires 3rd party libraries to provide the required functionality. That means OpenSSL must be installed on your Mac. (Note that several Allegro CL modules use the :ssl module.) There are two options for OpenSSL on macOS: MacPorts and Brew. The Allegro CL :ssl module will work with both SSL 1.0 and 1.1 but because OpenSSL 1.0.x has passed its end of life, we do not describe installing it here.

We recommend using MacPorts for the following reasons:

However, instructions are included below for both systems.

In either case, we assume the base application (MacPorts or Brew) is already installed.

In our examples, we assume the Allegro CL executable mlisp is located in a directory that is listed in the PATH environment variable, as if this has been executed in BASH:

$ PATH=/Applications/AllegroCL64.app/Contents/Resources:${PATH}

Installing the OpenSSL libraries

We currently support OpenSSL 1.0.x and 1.1.x. The instructions below pertain to using OpenSSL 1.1.x. (As said above, OpenSSL 1.0.x has gone beyond end of life, so we are noy providing instructions for it.)


6.2.1 Installing OpenSSL using MacPorts

MacPorts is installed as root, so to install OpenSSL:

$ sudo /opt/local/bin/port install openssl

If Xcode is not already installed, then the first time you execute the above command, a popup dialog will ask you to install Xcode. The choices are Install to install the command line version of tools needed and Get Xcode to install all of Xcode. The latter takes much more time and space. Either choice will work. Once Xcode install is done, execute

$ sudo /opt/local/bin/port install openssl

a second time, and this time it will install openssl.

MacPorts installs the OpenSSL libraries into /opt/local/lib/. This directory will be used to set DYLD_LIBRARY_PATH below.

Skip down to Section 6.2.3 Loading the :ssl module into Allegro CL.


6.2.2 Installing OpenSSL using Brew

Brew installs LibreSSL rather than OpenSSL. LibreSSL is currently compatible with OpenSSL and works with the :ssl module.

At the current time, LibreSSL is not automatically detected, so Allegro CL must be told which version of OpenSSL is installed. There are two ways to do that:

That is, you should do this in BASH

$ export ACL_OPENSSL_VERSION=11

or this in ACL:

(setq *aclssl-version* '(1 1))

before you load the :sslmodule. Not doing so will cause the following error to be signaled:

cl-user(1): (require :ssl)
; Fast loading
;    /Applications/AllegroCL64.app/Contents/Resources/code/ssl.006
;;; Installing ssl patch, version 6.
;   Fast loading
;      /Applications/AllegroCL64.app/Contents/Resources/code/osi.003
;;; Installing osi patch, version 3.
;     Fast loading
;        /Applications/AllegroCL64.app/Contents/Resources/code/fileutil.003
;;; Installing fileutil patch, version 3.
;     Fast loading
;        /Applications/AllegroCL64.app/Contents/Resources/code/acldns.001
;;; Installing acldns patch, version 1.
;     Fast loading from bundle code/iodefs.fasl.
;       Fast loading from bundle code/iordefs.fasl.
;         Fast loading from bundle code/efmacs.fasl.
; While evaluating #'(:top-level-form "sys:;code;ssl.cl" 25608):
Error: Failed to parse output of 'openssl version' "LibreSSL 2.6.5"

Brew: Installing OpenSSL

The following command will install the openssl formula into /usr/local/Cellar/... (the exact location can be displayed with brew --prefix openssl after installation as shown below):

$ brew install openssl

Now get the full OpenSSL library path with the command:

brew --prefix openssl

This directory will be used to set DYLD_LIBRARY_PATH below.


6.2.3 Loading the :ssl module into Allegro CL

To properly load the OpenSSL libraries into ACL, the environment variable DYLD_LIBRARY_PATH must include the directory where the OpenSSL libraries reside.

Note that setting DYLD_LIBRARY_PATH in your shell initialization files will have no effect as we discuss below. For that reason, we recommend using some other named environment variable. Here we use a variable named LDLPATH.

To summarize, there are two settings for this variable:

# MacPorts:
export LDLPATH=/opt/local/lib

# Brew (current setting, can change when Brew is updated):
export LDLPATH=/usr/local/Cellar/openssl@1.1/1.1.1g/lib

LDLPATH will be used in the next section.


6.2.4 System Integrity Protection (SIP)

SIP is a macOS feature aimed to make macOS more secure. Because a malicious program could set DYLD_LIBRARY_PATH to change the behavior of the program, without modifying any system files, macOS does not pass DYLD_LIBRARY_PATH from a parent to newly created child subprocesses.

So on macOS 10.14 (Mojave) we have this behavior:

$ export DYLD_LIBRARY_PATH=/usr/local/Cellar/openssl@1.1/1.1.1g/lib/
$ echo $DYLD_LIBRARY_PATH
/usr/local/Cellar/openssl@1.1/1.1.1g/lib/
$ bash
$ echo $DYLD_LIBRARY_PATH

$ 

That means if you set DYLD_LIBRARY_PATH in your BASH initialization files and run Allegro CL from the Finder/Dock or from within Terminal, Allegro CL will not see a value for DYLD_LIBRARY_PATH. The fix for that is to start ACL like this:

$ env DYLD_LIBRARY_PATH=$LDLPATH mlisp

Now loading :ssl will work:

cl-user(1): (require :ssl)
; Fast loading
;    /Applications/AllegroCL64.app/Contents/Resources/code/ssl.006
;;; Installing ssl patch, version 6.
;   Fast loading
;      /Applications/AllegroCL64.app/Contents/Resources/code/osi.003
;;; Installing osi patch, version 3.
;     Fast loading
;        /Applications/AllegroCL64.app/Contents/Resources/code/fileutil.003
;;; Installing fileutil patch, version 3.
;     Fast loading
;        /Applications/AllegroCL64.app/Contents/Resources/code/acldns.001
;;; Installing acldns patch, version 1.
;     Fast loading from bundle code/iodefs.fasl.
;       Fast loading from bundle code/iordefs.fasl.
;         Fast loading from bundle code/efmacs.fasl.
;   Foreign loading sys:aclissl11.dylib.
t
cl-user(2): 

If you use run-shell-command to start a new ACL process, then loading :ssl in the new process will fail (the specific error is shown below):

(run-shell-command "/Applications/AllegroCL64.app/Contents/Resources/mlisp")
(require :ssl) => Error

To fix that, pass DYLD_LIBRARY_PATH to the newly created process (see 8. The environment keyword argument in the description of run-shell-command):

(run-shell-command
  "mlisp"
  :environment `(("DYLD_LIBRARY_PATH" . ,(sys:getenv "DYLD_LIBRARY_PATH"))))
(require :ssl) => t

Since DYLD_LIBRARY_PATH has the correct value, we can use the value of it and pass it to the new process, rather than using LDPATH, as in the BASH example.

If DYLD_LIBRARY_PATH is not set properly, this error will be signaled:

Error: Loading sys:aclissl11.dylib failed with error:
       dlopen(/Applications/AllegroCL64.app/Contents/Resources/aclissl11.dylib, 10): Library not loaded: @rpath/libcrypto.1.1.dylib
  Referenced from: /Applications/AllegroCL64.app/Contents/Resources/aclissl11.dylib
  Reason: image not found. [physical pathname is
       /Applications/AllegroCL64.app/Contents/Resources/aclissl11.dylib]
  [condition type: file-error]

6.2.5 Running under GNU Emacs

This section pertains to the Emacs-Lisp interface (ELI), which is part of Allegro CL. Some of this information may be useful to SLIME users.

To ensure the value of DYLD_LIBRARY_PATH is set correctly for Lisp images executed by Emacs, put something like this in $HOME/.emacs after loading fi-site-init:

 (push (cons "DYLD_LIBRARY_PATH" thing) fi:subprocess-env-vars)

where thing is one of:

The alist values of fi:subprocess-env-vars cause the value to be explicitly set in the newly created subprocess.

See also Launching GNU Emacs from the Dock in the next section.


6.2.6 Troubleshooting

Launching from the Dock: Allegro CL

The environment that programs inherit when started from the Dock is the same as in other cases: they lack any setting for DYLD_LIBRARY_PATH or DYLD_LIBRARY_PATH. (They also lack BASH initialization file changes to the PATH environment variable, since the Dock does not run as a subprocess of BASH.)

For this reason, starting Allegro CL from the Dock and using the :ssl module is not supported. Note: the :ssl module is used by numerous other Allegro CL modules.

Launching from the Dock: GNU Emacs

Launching Allegro CL from GNU Emacs launched from the Dock is supported, but the only real way is to hardwire the values in $HOME/.emacs. For example, this is known to work with Brew:

(load 
  "/Applications/AllegroCL64.app/Contents/Resources/eli/fi-site-init.el")
(push (cons "DYLD_LIBRARY_PATH" "/usr/local/Cellar/openssl@1.1/1.1.1g/lib/")
      fi:subprocess-env-vars)
(push (cons "ACL_OPENSSL_VERSION" "11")
      fi:subprocess-env-vars)

What to do if you get an error

If evaluating these forms produces an error

(setq *aclssl-version* '(1 1))
(require :ssl)

then please send us the following:

Send this information to support@franz.com. Give the message the subject ACL 10.1 macOS OpenSSL problem.


6.3 Testing that the installation of Allegro CL on macOS was successful

Make sure you have downloaded patches with sys:update-allegro. The allegro image may not start because it may needs updates installed and images updated. In that case, start one of the non-IDE images (such as mlisp or alisp), evaluate (sys:update-allegro), exit Lisp, and run update.sh. Once images are updated, the allegro executable will work.

We will test the installation by starting Allegro CL from a Terminal Window. To the prompt in a Terminal Window, enter the full path of the Allegro CL executable (on installation, one of allegro, mlisp, alisp, mlisp8, and alisp8 to the shell prompt.

Assuming the Allegro is installed as described above for the dmg installation, and that you wish to run the mlisp or alisp executable, enter (replacing mlisp with alisp or allegro or mlisp8 or alisp8 as desired):

Allegro CL should start up. You will see the banner and perhaps additional messages, and the first prompt (the exact text depends on the platform and which image you are running, so you may see something slightly different from what is printed here):

Allegro CL Enterprise Edition 10.1 [macOS]
Copyright (C) 1985-2015, Franz Inc., Oakland, CA, USA.  All Rights Reserved.
;; Optimization settings: safety 1, space 1, speed 1, debug 2.
;; For a complete description of all compiler switches given the
;; current optimization settings evaluate (EXPLAIN-COMPILER-SETTINGS).
;; Current reader case mode: :case-sensitive-lower
user(1): 

To the Lisp prompt user(1):, enter some form to ensure evaluation is working, like (* 20 30):

user(1): (* 20 30)
600
user(2):

You may now either exit Allegro CL by entering :exit (see the top-level command :exit):

user(2): :exit

or you may continue using Allegro CL.


6.4 Warning about XQuartz's Full-screen mode

If you run XQuartz in Full-screen mode, it may happen that when you exit Allegro CL's IDE, the screen will go black and keys will seem not to work. This is apparently a feature of XQuartz. Avoid it by turning off Full-screen mode in the X11 Preferences. If it happens, the key sequence Command-Option-A is documented to take you out of Full-screen mode.



7.0 Installation of Allegro CL Express on macOS

Installation of Allegro CL Express is described in express-installation.html.



8.0 Installing Emacs from the web

We no longer supply a version of Emacs on the CD. In past releases, the version on the CD quickly became out of date. Emacs is easily downloaded from multiple sources on the net. See franz.com/emacs/ for information.

There is a downloadable installer for GNU Emacs on Windows on franz.com/emacs/. That same location has links to locations from which to download Emacs for Unix platforms.

Once you have Emacs installed on your machine, you need to have it load the Emacs-Lisp interface files when it starts up. You do this by putting the appropriate form in your .emacs file, as described:

The page at franz.com/emacs/ has additional recommendations for the .emacs file, along with a list of convenient key bindings. See also eli.htm: this is the documentation file for the Emacs-Lisp interface.



9.0 Installing OpenSSL libraries

Allegro CL supports the Secure Socket Layer (SSL) protocol, as described in Secure Socket Layer (SSL) in socket.htm. The OpenSSL libraries are necessary to make use of this facility.

Installing OpenSSL libraries on Unix platforms except macOS

Many linux platforms and the Mac include OpenSSL as part of the regular OS installation. On such platforms, no action is typically required to use OpenSSL with Allegro CL. If your platform does not include OpenSSL libraries or if for some reason you want a different version than that supplied by the OS, get further information at openssl.org. See Secure Socket Layer (SSL) in socket.htm for further information and instructions on how to ensure Allegro CL can find the OpenSSL libraries when required.

Installing OpenSSL libraries on macOS

Instructions for installing OpenSSL on macOS can be found at https://franz.com/support/openssl-mac.lhtml.

Installing OpenSSL libraries on Windows

  1. Update Allegro CL: see sys:update-allegro for information on updating. (You can use that function or use other tools described on sys:update-allegro's documentation page. You may have already updated as part of general installation.)
  2. Follow the instructions at http://franz.com/ftp/pub/openssl/windows/readme.txt. Those instructions describe how to install the latest OpenSSL library on your Windows system.


10.0 Other Allegro CL products

Allegro CL comes with various add-on products, such as the CLIM windowing system and Orblink. Some require additional licenses. Others are available to all users. All material needed for these products is in the distribution. Only the license file determines whether products can be used or not. Contact your Franz Inc. Account Manager for information on licensing.



11.0 Getting a license file

You must have a license file to use Allegro CL and its associated products. The license file is not included with the regular distribution (it is included with the Allegro CL Exoress edition).

Professional and Enterprise customers with current maintenance agreements should have received an email message from Franz Inc. with instructions on how to obtain their license file.

The email sent by Franz Inc. gives an URL from which the license file can be retrieved. The email is in Mime format, with plain text and HTML versions. If you are able to read mail in a mime-enabled client, you will be able to click on the URL immediately.

You should retrieve the license as soon as you receive the email even if you have not downloaded the software. Then the license file will be ready when you install Allegro CL. The name of the file when it is put in the Allegro directory must be devel.lic. However, you may use any name when retrieving, renaming when you copy it to the Allegro directory later.

The license file is a text file which includes encrypted text. See The Allegro CL license file in startup.htm for a sample (with the encrypted text much and obviously modified).

If you upgrade your license or purchase add-on products, you will be sent email with instructions for retrieving a new license file. Placing the new license file in the Allegro directory is all you must do to use the upgraded version of the new add-on products.

If you do not have a license file or the license file you have does not seem to license the correct product mix, contact your Account Manager for information. (That link goes to the file introduction.htm. If that link does not work, call Franz Inc. in Oakland, California, at +1 510-452-2000 or send email to support@franz.com or info@franz.com. In email, be sure to identify yourself and provide information on how you can be contacted.)



12.0 Installing source code

In order to get source code (if your license allows it), you must return the source code license addendum included with the distribution. When that addendum is received, you will be sent a new license which allows installing source code. (Some sources are free to licensed customers and others are provided for an additional charge. If you have questions about getting source code, please contact your Account Manager.)

The sources available are:

Encrypted source files are already supplied with the Allegro CL distribution. Various src*.sh files (on UNIX and macOS) or src*.bat files (on Windows) will, on UNIX, decrypt these files directly into a subdirectory named src/ and, on Windows, generate .zip files for you to unzip. Assuming you have an appropriate updated license, here are the steps for installing the sources:

  1. On Windows, open the Windows Explorer.
  2. On Windows, find the Allegro directory in the explorer (it is typically c:\Program Files\aclXX\ where XX is the release number without the dot (like acl101) but you may have chosen a different directory).
    On UNIX, cd to the Allegro directory (it is typically /usr/local/acl[versionrelease-number]/ but you may have chosen a different directory) in a shell.
  3. On Windows, double-click on the files srclisp.bat (and also, if appropriate srcclim.bat, srcaodbc.bat, srcmysql.bat, srcoracle.bat, and srcorblink.bat). Note that the CG and IDE sources are unpacked by srclisp.bat.
    On UNIX, run ./srclisp.sh (and also, if appropriate ./srcclim.sh, ./srcaodbc.sh, ./srcmysql.sh, ./srcoracle.sh, and ./srcorblink.sh).
  4. On UNIX, you are now done. The files decrypt into the src/ subdirectory and are now available. On Windows, you will see a .zip file for each src*.bat file run. Clicking on the file in the Windows explorer will often allow you to extract the contents. Or if you have Cygwin installed, it has an unzip program.

Copyright (c) 1998-2022, Franz Inc. Lafayette, CA., USA. All rights reserved.
This page has had moderate revisions compared to the 10.0 page.
Created 2019.8.20.

ToCDocOverviewCGDocRelNotesFAQIndexPermutedIndex
Allegro CL version 10.1
Significant update since the initial 10.1 release.
10.0 version