Question: I'm trying to perform some tasks in educational purposes and stuck with unit `graph`.

When compiling I'm getting this error:

```
task4.pas(10,11) Fatal: Can't find unit graph used by task4

```

I've been googling for a while and found that `ptcgraph`, `sdlgraph` and `ggigraph` could be used instead. But I didn't get far with it. `ptcgraph` and `ggigraph` were resulting in same error. However, it is better with `sdlgraph`.

But there were couple linking errors:

```
ld: library not found for -sdl

```

And after `brew install sdl`:

```
ld: library not found for -lgcc

```

I've got no idea how to install it. So, I'm wondering if there either something I didn't done or something I'm supposed to use instead of `graph` unit.

Answer: 
The graph unit is not available for Mac OS X because no one has implemented it. The source code that gets installed is generic and hence also contains the source code for units that don't work on the current platform (e.g., it also includes the source code for the Win32 rtl).

The sdlgraph unit was once started by someone, but that person unfortunately disappeared after a short while. You can try using it by added "sldgraph" to your uses clause, but it's unlikely that it will work very well. Contributions to make it work better are of course welcome.
Graph should be available on Mac OS X. On my machine it is in the path "/usr/local/share/fpcsrc/packages/graph/src/macosx/graph.pp". Please check if your search paths are correctly set.

However, according to the [official documentation](http://www.freepascal.org/docs-html/rtl/graph/) "The unit is provided for compatibility only: It is recommended to use more modern graphical systems."