wiki:howto/InstallingOlderPort

Version 5 (modified by mf2k (Frank Schima), 15 years ago) (diff)

Spelling fix.

<- Back to the HOWTO section

How to install an older version of a port

  • Audience: Anyone needing an older version of a port than is currently available in the repository
  • Requires: MacPorts >=1.7

Introduction

MacPorts does not include a feature to let you install an older version of a port. It only lets you install the current version of the port that has been created by the port author.

Installation

Step 1: Finding the right revision

To install an older version of the port, you'll have to manually download the files from the repository. Browse the repository to find the directory of the port you want, then use the Revision Log link in the upper right to find the older version that you want to install. For example, if you wanted to install the older 8.4.16 version of tcl, browse to the lang/tcl directory and look at its revision log. Here you'll note that tcl was updated to 8.5.0 in r32235, so you want the revision before that, which was r30810. Click the @30810 link in the revision log (not the [30810] link) to see the directory as it existed in that revision.

Step 2: Getting the Portfile

Click the Portfile to see it, then download it to disk using the Original Format link at the bottom of the page. The tcl port doesn't have a files directory, but if it did, you should download each file within it as well, and place them in a files directory on your disk in the same place where you downloaded the Portfile.

Step 3: Building the downloaded port

Finally, use the Terminal to cd to the directory where you downloaded the Portfile and type "sudo port install".

Alternative method to getting the port

Subversion can be used as well to fetch an older port, and is simpler for one that has a files/ subdirectory.

Step 1: Finding the right revision

Follow Step 1 earlier to find the right revision for the port you need, eg, 30810.

Step 2: Checking out the port

Check out the revision you found for the port, you'll need that revision number and the category/portname path to the port (lang/tcl for tcl). Then you use svn to check out the port at that revision:

svn co -r 30810 http://svn.macports.org/repository/macports/trunk/dports/lang/tcl

This creates a tcl directory in your current location, and populates that with everything the port should need to build. Replace the 30810 and lang/tcl with the correct revision and category/portname for your interested port.

<- Back to the HOWTO section