The purpose of &#x2F;usr&#x2F;local is for you to put stuff there, but it actually causes a lot of problems if a package manager does it.<p>- your work-issued laptop might have work stuff installed in there, and the package manager will overwrite it<p>- build-from-source package managers like fink&#x2F;ports&#x2F;brew are incapable of controlling themselves and always install things you didn&#x27;t ask them to<p>Since &#x2F;usr&#x2F;local is in the default search path for your compiler, that last one means your personal configure script runs are not reproducible, and you&#x27;ll start linking to packaged versions of libiconv or whatever without meaning to, and your code won&#x27;t work on other machines or it&#x27;ll crash unexpectedly.<p>Fink invented &#x2F;sw for this, MacPorts uses &#x2F;opt which I think they got from Solaris?