2011-11-19

How to install FontForge on Mac OS X Lion

Since I got some old font files before 2007 and I wanna use them, after some inspection, Font Magager told me that the name tables of the fonts are mssing. In order to add them manually, I googled a while to find out FontForge can do the job.

Now comes the problem. FontForge is open source and doesn't provide any compiled binary for Mac OS X ab 10.6. That means, one must complie it before it can be used. So after a little searching again, I found Garrick's guide [How to install fontforge on mac os lion]. Sadly, the process he used doesn't work for me.

He suggests that it can be done easily with the commands:

brew install fontforge
sudo brew link fontforge

The first command returns some fatal errors:

Error: Failed executing: make install
These existing issues may help you:
https://github.com/mxcl/homebrew/issues/7658
https://github.com/mxcl/homebrew/issues/8144
https://github.com/mxcl/homebrew/issues/8491

Then the answers in those issues suggest:

brew install cairo --use-clang

I tried

brew install fontforge

after successful execution of that command. Then it came with:

Error: Failed executing: make
If `brew doctor' does not help diagnose the issue, please report the bug:
https://github.com/mxcl/homebrew/wiki/checklist-before-filing-a-new-issue

According to the message, I ran the command:

brew doctor

The result was:

Unbrewed dylibs were found in /usr/local/lib.

If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
/usr/local/lib/libfaac.0.dylib
/usr/local/lib/libfreetype.6.dylib
/usr/local/lib/libical.0.0.0.dylib
/usr/local/lib/libicalss.0.0.0.dylib
/usr/local/lib/libicalvcal.0.0.0.dylib
/usr/local/lib/libltdl.3.1.0.dylib
/usr/local/lib/libmp3lame.0.dylib
/usr/local/lib/libmp4v2.0.dylib

Unbrewed static libraries were found in /usr/local/lib.

If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected static libraries:
/usr/local/lib/libdevkit.a
/usr/local/lib/libical.a
/usr/local/lib/libicalss.a
/usr/local/lib/libicalvcal.a
/usr/local/lib/libkld.a
/usr/local/lib/libltdl.a
/usr/local/lib/libredo_prebinding.a

Unbrewed .la files were found in /usr/local/lib.

If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected .la files:
/usr/local/lib/libical.la
/usr/local/lib/libicalss.la
/usr/local/lib/libicalvcal.la
/usr/local/lib/libltdl.la


So I deleted all the above mentioned files manually and executed the command again.

brew install fontforge


The result:


Error: Failed executing: make
If `brew doctor' does not help diagnose the issue, please report the bug:
https://github.com/mxcl/homebrew/wiki/checklist-before-filing-a-new-issue


Very luckily I saw a warning before the compiling errors, that reads:

Warning: Building with LLVM, but this formula is reported to not work with LLVM:

Compiling cvexportdlg.c fails with error: initializer element is not constant

We are continuing anyway so if the build succeeds, please open a ticket with
the following information: 2336-10.7. So
that we can update the formula accordingly. Thanks!

If it doesn't work you can: brew install --use-gcc


So I tried the command again:

brew install fontforge --use-gcc

Now Mac OS X Lion lets me compile FontForge endly.

In conclusion, the right commands to compile FontForge on Mac OS X Lion should be:

brew install cairo --use-clang

brew install fontforge --use-gcc


In order to see FontForge in Application folder, you need to run this command:

ln -s /usr/local/Cellar/fontforge/20110222/FontForge.app /Applications

6 comments:

Cindyvrella said...

Hi
I'm really battling with this. I have no knowledge at all with anything slightly related to programming, so panic when I see any sort of script or command. I've downloaded both the FontForge_intelmacX.5_x86-py25-20080828.pkg and a fontforge-20110222 folder with a whole lot of files in it and put them on my desktop. Where to from here? I'm on mac os10.6
Any help would very very appreciated!
Cheers
Cindy

Dom's Ramblings said...

@Motou:
First of all Motou. A big "Dankeschön" for your writeup on how to install fontforge on Lion.
Without your help - frankly - I would have never have figured it out.
With your instructions, it was a breeze and the whole build took about 45 minutes on an Core 2 Duo MacBook Pro.
Now let me write some stuff for Cinderella who seems to be lost in installing brew to start with or possibly does not know what it is.

@Cinderella:
Cinderella, hope this helps. Yes, it uses the scary command line, but its really SIMPLE. I promise.
Here are the steps:

Preliminary Steps and prerequisites:
1) Make sure you are connected to the internet while doing these.
2) You must be doing this on the computer that you want to use fontforge on because it will be custom build, so to speak, for this machine.

OK, onto Step 1 (installing "brew" - a package manager for OSX)
Open a terminal.
Past this link:
/usr/bin/ruby -e "$(curl -fsSL https://raw.github.com/gist/323731)"
It will install "brew".
It will ask you a few questions just accept all defaults (press enter) and enter you password when prompted (you need to be an admin to install brew).
Let it do its thing and it should say in the end "==> Installation successful!".

That was not too hard, was it?

Step 2 (following the instructions from this site to install fontforge)
In a terminal type or copy:
brew install cairo --use-clang
It will take a few minutes to download and install.
When its done it will say something like this:
==> Summary
/usr/local/Cellar/cairo/1.10.2: 95 files, 6.7M, built in 3.5 minutes

Still with me? Still doable and not too scary?

Continue with this longest step of all:
In a terminal type or copy:
brew install fontforge --use-gcc
Again it will download some stuff and take a while. Go and make a coffee.

Now drink it. Relax, it will finish.... Eventually.... It is the longest step of the lot and be patient.
A lot of messages will appear now and again, some of them "Warnings" in red. Just ignore it. As long as it finishes as described you are good to go.
Sometimes nothing might appear to be happening for 10-15 minutes or so, but it is working. It is "compiling" the source code into code that can be run on your machine.

If all goes well, and it should, you should see the following in the end:
==> Summary
/usr/local/Cellar/fontforge/20110222: 270 files, 15M, built in 9.1 minutes

As the final and last (and fast) step create a link as described above so find FontForge.app in your applications folder.
ln -s /usr/local/Cellar/fontforge/20110222/FontForge.app /Applications

DONE!

This is my write up on how I followed Motou's instructions and it works like a charm!
Thanks again.

Pentamonium said...

Do these instructions give a working Libspiro installation - i.e. you can use the Spiro functionality?

thanks for the write-up

Stefan

steveb said...

I am stuck! Please help guys, I keep getting:

Please report this bug:
https://github.com/mxcl/homebrew/wiki/reporting-bugs
/usr/local/Library/Homebrew/extend/string.rb:18:in `gsub!'
/usr/local/Library/Homebrew/extend/string.rb:18:in `gsub!'
/usr/local/Library/Formula/fontforge.rb:47:in `install'
/usr/local/Library/Homebrew/utils.rb:235:in `inreplace'
/usr/local/Library/Homebrew/utils.rb:229:in `each'
/usr/local/Library/Homebrew/utils.rb:229:in `inreplace'
/usr/local/Library/Formula/fontforge.rb:46:in `install'
/usr/local/Library/Homebrew/build.rb:88:in `install'
/usr/local/Library/Homebrew/formula.rb:192:in `brew'
/usr/local/Library/Homebrew/formula.rb:519:in `stage'
/usr/local/Library/Homebrew/extend/fileutils.rb:22:in `mktemp'
/usr/local/Library/Homebrew/formula.rb:515:in `stage'
/usr/local/Library/Homebrew/formula.rb:187:in `brew'
/usr/local/Library/Homebrew/build.rb:67:in `install'
/usr/local/Library/Homebrew/build.rb:30
/usr/local/Library/Formula/fontforge.rb:54

:( I don't have a clue what to do!

motou said...

@steveb

try to figure out if you have installed the newest version of Ruby.

Graham I. Haynes said...

I installed the latest xcode app on Mac OS Lion, opened a terminal, then typed in:

brew install cairo --use-clang

After a few minutes I received the message:

Error: Failed executing: make install (cairo.rb:39)

I looked through a bunch of troubleshoot forums and didn't see anyone with the exact problem. Can anyone help??