MacOS – PHP MAMP user not finding /usr/local/bin

apachemacosmampPHP

I have a website in a shared Linux hosting that uses Ghostscript. I use by php exec function that executes command line functions, gs commands to render PDF files, by simple gs commands.

gs -h (will display info)

However, in my Mac OS X MAMP web server gs commands are only executed by full paths.

/usr/local/bin/gs -h (will display info)

How do I configure my local system so "php" user will find gs (and other libraries) without full path?

EDIT: Command line by Terminal does not need full path either. The problem is only when trying to execute gs by exec PHP function.

Best Answer

This is most likely an issue with the default search path on MacOS X not including that directory. Homebrew is affected by that as well, so they list a workaround on their FAQ page:

launchctl setenv PATH "/usr/local/bin:$PATH"

That FAQ entry also helpfully references https://stackoverflow.com/questions/135688/setting-environment-variables-in-os-x/5444960 for more details about setting environment in OS X.