EiffelOnMac

Revision as of 06:55, 26 August 2009 by Dfurrer (Talk | contribs) (Using MacPorts)


This page gives you an overview about how to get EiffelStudio running on your Mac.

Installation

Using MacPorts

The officially supported versions of Mac OS X are 10.4 and 10.5.

MacPorts is a great tool that allows you to use many Unix applications on the Mac. We have created a package in the MacPorts repository that allows you to to install Eiffel Studio with all dependencies in a convenient way. First, install MacPorts as described here.

Now simply type:

sudo port install eiffelstudio64

and you're ready to go (after a few hours compiling that is :)). Compiling on a new Intel Mac reportedly takes about an hour. An old 800 MHz PowerPC takes about seven hours.

A fairly recent development package is available under the name eiffelstudio65. (Both packages can be installed simultaneously)


The installer from the previous subsection is actually created using MacPorts as well using the mpkg command. For more information take a look at the MacPorts Guide

Starting EiffelStudio

Simply navigate to /Applications/MacPorts/Eiffel<nn> and double click the EiffelStudio icon.

Alternatively, you can also start EiffelStudio from the command line by entering the command 'estudio' or use the command-line eiffel compiler 'ec'.

Upgrading

When a new version of EiffelStudio is available, you can upgrade like so:

sudo port selfupdate
sudo port upgrade eiffelstudio

Be prepared for another long wait while it compiles. You can do likewise for eiffelstudio-devel, of course.

Beware that this may not get the latest release if the Port file has not been updated yet. Even after it has been updated, it may take a week for it to propagate to MacPorts. If you can't wait, here's how to get the latest version immediately:

  1. Edit your local copy of the Portfile: sudo port edit eiffelstudio. Change minor_version and version. Save.
  2. Tell MacPorts to use the local copy of your Portfile: cd /opt/local/var/macports/sources/rsync.macports.org/release/ports (assuming this is where your ports are), then type portindex. It will print hundreds of "Adding port" messages, one of which should be lang/eiffelstudio.
  3. Find out the checksums for the new version: sudo port -d upgrade eiffelstudio.
  4. Edit your local Portfile again, substituting the checksums.
  5. Now sudo port upgrade eiffelstudio should upgrade to the version described in your local Portfile.

FAQ

I get a crash with a Permission denied: Operating system error, how do I fix it?

Delete the .ec directory in your home directory.

I get a linking error with precompiles on PPC, why is that ?

Precompiles did not work on the Mac before EiffelStudio 6.4 due to a limitation of the linker. To work around this issue don't use precompiles on Macs.

Information.png Note: When you create a project, EiffelStudio will ask if you want to perform precompiles – say no. Then disable the precompiles for this project through the Project>Project menu. In the 'Groups>Precompile' section, remove all precompiles (eg., base_pre). Select the 'base_pre' precompile and click the red cross delete tool at the top of the window.


Information.png Note: Precompiling the Eiffel libraries after installing the Port is possible, there are security policies to take into account. The Port installs EiffelStudio under the system's /Application/MacPorts directory and not the user ~/Application/MacPorts. Due of this, EiffelStudio must be run as a super user and the precompiles build using the Tools > Precompile Wizard option. Alternatively, alter the base installation path when requesting to install the Port.

Hints

  • Use Helvetica 12 as Editor font. If you prefer a smaller font, use Hei 10.
  • Pick and Drop works with Apple-key + mouse click.
  • To set up the correct (default) browsers use "open" as your command-line browser in Tools>Preferences...

Preferences open mac.jpg

  • To run the ec compiler from your shell, set up variables similar to these (e.g. in ~/.profile):
# Setting variables for EiffelStudio.
export ISE_EIFFEL=/Applications/MacPorts/Eiffel61
export ISE_PLATFORM=macosx-ppc (or macosx-x86)
export ISE_PROJECTS=$HOME
export ES_PATH=$ISE_EIFFEL/studio/spec/$ISE_PLATFORM/bin
export PATH=$ES_PATH:$PATH
  • The F10 and F11 debugging shortcuts conflict with the standard Exposé keys. Here are some workarounds:
    • Use the toolbar instead.
    • Reassign these shortcuts in EiffelStudio (Tools>Preferences).
    • Reassign the Exposé keys in System Preferences.
  • The version of X11 installed with Mac OS X Leopard 10.5.0 and 10.5.1 does not work. The 10.5.2 and later updates are probably ok, however, but if you're having problems have a look at http://trac.macosforge.org/projects/xquartz. For more details, see http://www.eiffelroom.com/blog/paulbates/a_little_help_for_mac_users which pre-dates the release of 10.5.2.