Bugs in PHYLIP, known or recently fixed

The hemipteran Thasus, a vary large true bug

This page shows only recent bugs, but we make this listing cumulative so that it will have ever more material on it (we never run out of bugs). Not all bugs we find or fix can be shown -- these are only the most dramatic ones.

Known bugs (we're working on them)

A problem running the Windows executables in Windows 10 (or 11?)

In recent versions of Windows, there can be a problem in which the system declares that the program cannot be run on Windows 10. This turns out to be a problem if you are on a Windows machine for which someone else is the administrator. If you are the administrator then you can give the program permission to run on that machine. That only needs to be done once for each program, and the program will work after that.

A compiling problem with a version of the gcc compiler

On 19 October 2023 I tried to compile the 3.697 source code and ran into a problem with linking to make executables. This was with the 10.2.1 version of the GCC compiler on a Linux system. The problem is owing to a bug in our variable definitions. It can be almost entirely avoided by changing the CFLAGS statenment in Makefile.unx to read CFLAGS = -zmuldefs

Two irritating problems with recent versions of MacOS

There are two serious problems running PHYLIP 3.695 executables in recent versions of the MacOS operating system. Fortunately there are workarounds, and although each is tedious, it only has to be done once for each program that is affected. Then, after that, you will not have the problem again for that program.

Latest news: These two problems seem to have gone away with the update of MacOS to version 10.15.7. At least they did on my computer. If you have a recent version of MacOS and see these problems, do send me an email giving the details.

Problem 1
In recent versions of MacOS such as some recent versions of MacOS Catalina), when you click on a program icon (in the "exe" folder) you will be presented with a box which says that the program comes from an unknown developer, and you will not be offered any option to open it anyway. is a security feature. For many versions of MacOS there is an easy workaround for this that needs to be done once for each program: When this occurs, A menu should pop up nearby. Select not Open but control-click on Open. You will then see a box which has an option to open the program anyway. This allows the program to be opened in the future simply by clicking on the executable icon. So these steps only need to be done once for each of the programs in PHYLIP, and after that the program can be run by clicking on the icon for that program. We hope to avoid this in future versions by signing the programs with my Apple Developer identity.

There are two other considerations, one of which evades the problem, the other of which requires a different response:

Problem 2
In versions 10.14, 10.15, and 11 (Mojave, Catalina, and Big Sur) if you go to the "exe" executables folder and run a program by clicking on its icon, the program will look for files named "infile" and "intree" to read data from. Even if they are present in the folder with those names, under these recent versions of the operating system the program will report that it cannot find them. This seems to be the result of a change in the default path variables in the operating system.

There are two ways of working around this:

Many thanks to David Heckel for pointing out this problem and helping explore workarounds.

Bugs we know how to fix; the fixes will appear in the next release

Bugs we are still intending to work on and haven't yet fixed


Recently fixed bugs

These are listed by the version of the package that fixed them, in reverse chronological order (i.e., latest first). To see what bugs you have in the version of PHYLIP that you have, read down, stopping when you reach your version.

version 3.698 (October, 2019)
A serious problem arose due to recent changes in Microsoft Windows. Here is the background and some suggested workarounds:

For the two tree-plotting programs (Drawgram and Drawtree) the Java environment that we use to develop the front end ended up making Java code that calls a compiled C program that is in a Dynamic Link Library (DLL). Originally that program was 32-bit code that would run on Windows systems that were either 32-bit or 64-bit.

Lately, however, the Java systems installed on Windows were only willing to run 64-bit executables. And only willing to look for those executables in DLLs that contain 64-bit compiled code. But the compiled executables for Windows for 3.695 make 32-bit code, put it in the DLLs, and put those in a different folder than Java looks at. So the "path" Java uses is wrong.

I finally managed to recompile the code so as to have everything be 64-bit code. So everything works in version 3.698. Our downloads page now has both a Windows 64-bit version and a Windows 32-bit version available.

If you can't install those for some reason, here were some possible work-arounds:

  1. Find an old Windows system that is happy with 32-bit executables and whose installed Java is happy with 32-bit code in DLLs, and install PHYLIP and run it there.
  2. Move your tree to a MacOS system and have PHYLIP installed there. It should run correctly there.
  3. Move your tree to a Linux system and have PHYLIP installed there. It should run correctly there.

version 3.697 (December, 2017)
The bug recently found in the consensus-tree code by Makoto Shimada and Tsunetoshi Nishida, and described in their paper in Molecular Phylogenetics and Evolution (volume 109, pages 409-414, 2017) is now fixed using the fix that they provided. This is for the source code. The executables are currently still at version 3.695, and so still have this bug. The bug makes no difference if the product of the number of species times the number of trees is less than 32767, as it only has an effect when the hash table of partitions found overflows, and has to be expanded and repopulated.

version 3.695 (April, 2013)
version 3.69 (September, 2009)

version 3.68 (August, 2008)
version 3.67 (July, 2007)

version 3.66 (August, 2006)

version 3.65 (August, 2005)

version 3.64 (July, 2005)

version 3.63 (December, 2004)

version 3.62 (September, 2004)

version 3.61 (August, 2004)

version 3.6 (July, 2004)

version 3.6b (July, 2003)

version 3.6a3.1 A revised version of the Mac executables and sources corrected some bugs that were causing trouble only on that platform:
We have not yet upgraded the non-Mac sources and executables as these problems were Mac-specific.

version 3.6a3 (July, 2002)

version 3.6a2.1
A quick correction of 3.6a2 since:
version 3.6a2 (July, 2001)
These bugs which were present in version 3.6a were corrected
version 3.6a (July, 2000)
This "alpha release of 3.6 fixed some bugs that had been encountered over the years since version 3.573. Here are some of them:
version 3.573

version 3.572

version 3.57
versions 3.56

versions 3.54 and some executables of 3.55

[Phylip icon here] ... to the PHYLIP home page