Fork me on GitHub

AppVeyor: AppVeyor Build Status (Windows Build) Github Actions: Github Actions Ubuntu 20.04 Build Github Actions: Github Actions macOS build Github Actions: Github Actions Cygwin build Github Actions: Github Actions Windows build Codacy: Github Actions Windows build

wxMaxima is written is C++ and uses wxWidgets. The sources are in git repository hosted at Github.

Trackers

Use Github issues page to submit bug reports or feature requests.

Git

Current wxMaxima source code is available in git repositories at github. Clone the repository with

git clone https://github.com/wxMaxima-developers/wxmaxima

Build instructions can be found at https://github.com/wxMaxima-developers/wxmaxima/blob/main/Compiling.md. On some Linux systems the F1, Tab and Delete keys will be suppressed until the package ibus-gtk3 is installed.

Code documentation

The documentation of the code can be viewed here.

Changelog

Important changes in wxMaxima can be found in NEWS.md.
For all code changes look at the Git commit history.

Nightly Builds

Install a Nightly Build of wxMaxima

Windows

Wolfgang Dautermann's site always contains a recent build of Maxima and wxMaxima. Additionally appveyor tries to create a wxMaxima-only installer immediately after wxMaxima's sourcecode has been changed. This build is only available if there was no code change in the last about 10 minutes and if the code actually compiled for windows. As this build is compiled using Microsoft Visual C++ it is considerably slower than Wolfgang's nightly build, though, which is made using the gnu toolchain.

Linux

A nightly build of wxMaxima can be downloaded from Launchpad. This page also contains information on how to make debian-based system automatically keep updating to the latest build. For a one-time install downloading the .deb file and double-clicking on it should suffice on most systems. Alternatively the file can be installed from the console, on debian-based systems by typing:
sudo dpkg -i filename.deb
The build logs can be accessed using this page.

macOS

A nightly build of wxMaxima (without maxima) can be downloaded from www.peterpall.de/wxMaxima/nightly/wxMaxima.dmg

macOS+Linux

The result from trying to compile the latest version from the repository can be viewed at https://travis-ci.org/wxMaxima-developers/wxmaxima. A new compile is triggered at every commit to the wxMaxima repository.

Updating Maxima to the last version, as well

On Linux updating Maxima to the current git head should be straightforward. On Windows you can either use the nightly build, which is a ready-to-use installer (untested!) of the current development version of Maxima and wxMaxima (32 and 64 bit).
If you want to compile it by yourself, David Scherfgen posted the following procedure that allows to update the current Maxima installation to the git head on Windows, too, without having to install any traditional build tools.

  1. Install the latest "stable" Maxima build for Windows from sourceforge.net. We will use the wxMaxima version that comes with this build and just replace Maxima itself.
  2. If you don't have one, install a Git client for Windows from https://git-scm.com or https://tortoisegit.org/.
  3. Clone the Maxima Git repository into some directory. In this guide, I will assume that this is C:\Maxima-Git. The repository's URL is: git://git.code.sf.net/p/maxima/code
  4. If you don't have it already, install Steel Bank Common Lisp (SBCL) for Windows from http://www.sbcl.org. Since I'm on a 64-bit Windows, I chose the 64-bit version, and it worked fine.
  5. Now we will build Maxima using SBCL only. For that, precisely follow the instructions found in the INSTALL.lisp file in C:\Maxima-Git:
    1. Open a command prompt and CD to C:\Maxima-Git.
    2. Start SBCL by entering: sbcl
    3. Now we configure Maxima by entering (load "configure.lisp"), then (configure), and finally (quit)
    4. Navigate to the C:\Maxima-Git\src directory by typing: cd src
    5. Start SBCL again: sbcl
    6. Now we compile Maxima by entering (load "maxima-build.lisp"), then (maxima-compile), and finally (quit)
    7. Start SBCL again: sbcl
    8. Now we load the compiled Maxima program by entering (load "maxima-build.lisp") again, then (maxima-load)
    9. Finally, we dump an image by entering (maxima-dump)
  6. After these steps, you should have a compiled version of the latest Maxima. Verify that everything worked by running the maxima.bat file that you should find in C:\Maxima-Git\src. The Maxima command prompt should show up.
  7. Now we will make wxMaxima use our self-compiled Maxima version:
    1. Open an Explorer window and go to the bin subdirectory of your latest "stable" Maxima version. For me, this is C:\Program Files (x86)\Maxima-sbcl-5.35.1.2\bin.
    2. Rename the maxima.bat file to maxima.bat.bak.
    3. Rename the sbcl.exe file to sbcl.exe.bak. You need to do this because the supplied version of SBCL seems to be outdated, and that would result in troubles. By renaming the file, the SBCL version you earlier installed on your machine will be used instead.
    4. Copy C:\Maxima-Git\src\maxima.bat to the current directory.
  8. Verify that everything worked by starting wxMaxima and entering build_info(); - pay attention to the timestamp field, which should reflect the date and time when you compiled Maxima earlier.
  9. That's it! From time to time, you should pull new commits from the repository and rebuild Maxima by following step 5 again. Copying the files again (step 7) should not be necessary.
  10. If you want to undo the changes, delete the maxima.bat file and rename maxima.bat.bak back to maxima.bat and sbcl.exe.bak back to sbcl.exe.