Google

SourceForge Logo

Check out The Darwin Collection CD set.


Ports system installation notes

Dr. Michael L. Love, 2001.06.20

FreeBSD ports is a vast make system for all of the third party software that has been ported to FreeBSD. This is one of the major source code repositories on the net. Here are the steps to get it working with OSX. GNU-Darwin users should adapt these instructions accordingly.

Note: If you are a Darwin-x86 user, then consult the GNU-Darwin installation notes for Intel users.

  1. Root access is highly recommended to use the porting engine at this time. If you have not already done so, set a root password and enable root as follows.
    sudo passwd root
  2. Set the password. You are now the root administrator. Wasn't that easy? Be sure to note the precautions, then issue the following commands.
    su root # and type the root password when prompted
    ln -s /usr/bin/bsdmake /usr/bin/make
    ln -s /usr/bin/gnumake /usr/bin/gmake
    Those links (ln commmands) are developer's shorthand. Use cp and ln to configure your make system as follows. The particular method may vary.
    ls -l /usr/bin/*make

    -r-xr-xr-x 1 root wheel 118732 May 27 10:16 /usr/bin/bsdmake*
    -rwxr-xr-x 1 root wheel 188396 May 27 10:16 /usr/bin/gnumake*
    lrwxr-xr-x 1 root wheel 16 Jun 3 00:15 /usr/bin/make -> /usr/bin/bsdmake*

  3. If you have already installed the GNU-Darwin base files with the One Step Installer, Net Installer or Bootable Installer CD, then you can skip this step. If you do not plan to install the base distribution, you will still need the package manager and ancillary programs for the port system. Use the following procedure to install the package manager and essential files. Darwin-only users may have to fetch wget to a second computer, scp the file to your computer and install curl. (see scp man page)
    su root (that would be sudo -s for a stock OSX installation)
    curl http://gnu-darwin.sourceforge.net/gdEssentials | csh

    For dynamic loading compatibility (libdl) get dlcompat from the Fink Project.

  4. Get the ports archive and untar it as follows.
    cd ~
    wget http://prdownloads.sourceforge.net/gnu-darwin/ports-darwin.tar.gz
    cd /usr
    tar -zxf ~/ports-darwin.tar.gz
  5. All of the modified individual ports are available in GNU-Darwin CVS, or alternatively, you can download the gigabyte tarball. It should be noted that these files are not required in order to use the ports system, because over 1000 of the ports install automatically (See the Bootstrapping paper).

  6. Get anything else you need, such as /usr/share/mk and /etc/mtree, from FreeBSD.

  7. "cd /usr/ports" and find the directory with the application you wish to install. Change to that directory and type "make install". If all goes well, then the ports system will automatically download the necessary files from the internet, compile the sources, and install the application.
Related Links

FreeBSD ports
GNU-Darwin packages
GNU-Darwin porting tips
Bootstrapping the ports tree
Primetime Freeware: The Darwin Collection

Email Forum

We have created a forum for discussion of the ports collection for Darwin and Mac OSX users. More information is available at the forum home page.

Additional Information

This system is now the official GNU-Darwin porting engine. With this automated system we compiled over 2000 free software programs for GNU-Darwin, all in a relatively short period of time. All of the ported applications are fully OSX compatible, so that MacOS users can learn about the benefits of free software. Here is a comprehensive list of the software that is found in the ports collection. Most of these can now be fairly easily ported to GNU-Darwin and Mac OSX. Take your pick! To check our progress with a particular port, try the ports status table in the Bootstrapping paper.


archivers
astro
audio
benchmarks
biology
cad
chinese
comms
converters
databases
deskutils
devel
distfiles
editors
emulators
french
ftp
games
german
graphics
hebrew
irc
japanese
java
korean
lang
mail
math
mbone
misc
net
news
palm
print
russian
security
shells
sysutils
textproc
vietnamese
www
x11
x11-clocks
x11-fm
x11-fonts
x11-servers
x11-toolkits
x11-wm

email proclus