Although I fully agree with
@jozze on this matter there is one thing you might not be aware of.
chrcol said:
I say its risky because some ports may fail to recompile leaving you with missing perl modules, also some dependencies you dont want may get installed eg. I have php and apache installed from src and I dont want rrdtool14 since it creates messy cacti graphs
I'm a little bit confused here because the only
rrdtool I'm aware of is
databases/rrdtool. I think that's what you're referring too, a quick Internet search showed me something about "RRD graphics", but this port doesn't get automatically installed as a dependency when using both Apache and PHP.
Even so, I think there are two misconceptions here. You can override and reconfigure a
lot within the ports collection, and not by merely using specific options during the configuration stage (using
# make config
). The
ports(7) manual page already hints at this when you check the ENVIRONMENT section which basically lists everything you can override.
But it doesn't stop there. If you need even more hands on access you could check the big "Kahuna", or
/usr/ports/Mk/bsd.port.mk, that should lead you to the right options overview. For example, when it comes to PHP you might want to look into
bsd.php.mk.
Not saying that this is a sure way to solve whatever problem you currently have, I honestly don't know, but I do get the feeling that the ports collection provides a lot more options to fine tune the building of the port than you might be aware of.
But another issue:
portmaster. If you use
portmaster for all this then you'll never run into any problems that some ports may remain broken because one specific port failed to build. Simply because
portmaster will give you a very good overview of where the error occurred, but also shows you how you can continue the build process effectively excluding everything that has been built before.
It keeps track of what it's doing. So you'll always know which ports were build and which still need to be build.
For what's it worth, I've rebuilt Perl on a system which uses
mail/horde-webmail and so had to deal with a lot of PECL dependencies. Approximately 240 ports needed to be rebuilt but it really was merely a matter of starting
portmaster and be done with it.
Even though I did at one time came across an issue of a port trying to set
[]up
print/ghostscript9 while in fact it should have been using
print/ghostscript9-nox11. The cause of that was my own doing somewhere in the past, but using
portmaster really helped me solve this nasty loop.