A good setup for Perl on OSX:
- Install "Command Line Tools for Xcode", either directly or through Xcode, both available from Apple Developer downloads (free registration required). Xcode can also be installed through the App Store application.
- Open the Terminal.app (found in Applications -> Utilities)
and copy & paste the command below into it (then press the
curl -L http://xrl.us/installperlosx | bash
- Once this is finished (it takes several minutes), quit the Terminal app.
If you are interest in the details of the setup above...
- To build and install Perl and many of the thousands of useful Perl modules you need to have a compiler. For OSX the easiest way to get a compiler is to install "Command Line Tools for Xcode" (about 100 Megs), either directly or through Xcode (several Gigs), both available from Apple Developer downloads. Xcode is also available through the App Store application. Some versions of the OSX install DVD or SSD come with the 'developer tools', which contains Xcode. Only the 'unix tools' section of Xcode is actually required, no specific version of Xcode is needed, the latest is available directly through the App Store.
- To interact with the command line and run Perl commands, a terminal application is needed. OSX comes with Terminal.app by default, there are alternatives available as well.
- OSX uses .bash_profile, but most other systems (and instructions) look for .bashrc, this code sets up .bash_profie to also run anything in .bashrc. There are other differences but these are not important to us.
- Perlbrew is used by the this setup because it separates your installation from the system Perl, this makes upgrading OSX less likely to cause issues with your own Perl setup. It also means you can use a newer Perl than the default one which comes with OSX.
- Perlbrew does let you have multiple versions of Perl installed (very useful for testing if you want to upgrade to a new version), for the purposes of learning Perl you will only need one version which is why we 'switch' to use this as the default.
cpanmtool, which makes installing modules very simple to do.