# mtr has too many dependencies



## kenorb (Nov 3, 2010)

```
> cd /usr/ports/*/mtr
> make all-depends-list | wc -l
     108
```
Full list: http://pastebin.com/zjnpc0YQ

It doesn't sounds stupid?

Similar thing:
http://forums.freebsd.org/showthread.php?p=108284


----------



## kenorb (Nov 3, 2010)

```
> cd /usr/ports/*/mtr && sudo make config
===> No options to configure
```


```
> cd /usr/ports/*/mtr && sudo make WITHOUT_GTK=1 clean install
===>  Patching for mtr-0.80
===>   mtr-0.80 depends on executable: gmake - found
===>   mtr-0.80 depends on file: /usr/local/bin/intltool-extract - found
===>   mtr-0.80 depends on executable: pkg-config - found
===>   mtr-0.80 depends on shared library: atk-1.0.0 - found
===>   mtr-0.80 depends on shared library: glib-2.0.0 - found
===>   mtr-0.80 depends on shared library: gtk-x11-2.0.0 - found
```
???
Still GTK?


----------



## kenorb (Nov 3, 2010)

Works!

```
> cd /usr/ports/*/mtr && sudo make WITHOUT_GTK=1 WITHOUT_X11=1 clean install clean
```
Why it's so complex and nothing in config instead?


----------



## rusty (Nov 3, 2010)

Perhaps because it's exactly whats described at http://www.freebsd.org/cgi/ports.cgi?query=mtr&stype=all&sektion=net



> mtr-0.80
> Traceroute and ping in a single _graphical_ network diagnostic tool.


----------



## SirDice (Nov 3, 2010)

If you look in the Makefile you'll notice that setting WITHOUT_X11 is enough and WITHOUT_GTK actually doesn't do anything.

```
.if defined(WITHOUT_X11)
CONFIGURE_ARGS+=--without-gtk
PKGNAMESUFFIX=  -nox11
.else
CONFIGURE_ARGS+=--with-gtk
USE_GNOME=      gtk20
.endif
```

And about 104 of the 108 dependencies are because of GTK2.


----------



## phoenix (Nov 3, 2010)

If it's really that much of a bother, contact the port maintainer and ask them to OPTIONS-ify the WITHOUT_X11 option.  

Or, do it yourself, and submit a PR with the patch attached.


----------



## wblock@ (Nov 3, 2010)

kenorb said:
			
		

> ```
> > cd /usr/ports/*/mtr
> > make all-depends-list | wc -l
> 108
> ```



To see just what isn't yet installed,

`# make missing`

It's probably a far shorter list.


----------

