Ask Different is a question and answer site for power users of Apple hardware and software. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am a web developer and am wondering why os x comes a long with a lot of gnu tools (nano, bash, vim). How can apple provide them in their closed-source system when the GPL forbidds this?

Regards, Bodo

share|improve this question
up vote 1 down vote accepted

GPL does not forbid delivering software as binary. In case of OS X you can separate the GNU software. It's not linked but comes in individual binaries.

To make it GPL compliant you have to deliver the source and the licence. The source is available at .

share|improve this answer

The basic philosophy in the GNU world is that they want you to be able to change their software, and anything which requires their software. (This is their definition of "Free Software")

This essentially implies you need access to the source of all GPL software in a form so you can change things and install a new binary.

For programs which use GPL libraries directly ("linked with") they want you to have that ability too for those programs. For programs not linking with but invoking through a command line (like "gcc -o foo foo.c") this does not apply, as you can just use another c compiler instead. This is intentional and the GCC license address the fact that you can use it to create non-GPL'ed software.

Many commercial Unix server distributions have included GNU software over the years, but they have faded away. To my knowledge there is only Solaris and AIX left with any serious market impact (due to their ecosystem).

So, yes, Apple can include and ship GPL'ed software as long as they provide the sources you need to change that software yourself.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.