Starting Apache (httpd) with homebrew php55 dyld: Library not loaded: /usr/local/opt/apr/lib/libapr-1.0.dylib

1.5k views Asked by At
$> sudo apachectl start

Password:

Give me errors:

dyld: Library not loaded: /usr/local/opt/apr-util/lib/libaprutil-1.0.dylib
Referenced from: /usr/local/Cellar/httpd24/2.4.12/bin/httpd
Reason: Incompatible library version: httpd requires version 6.0.0 or later, but libaprutil-1.0.dylib provides version 4.0.0
2

There are 2 answers

0
xiaogwu On

The latest homebrew apr and apr-util doesn't seem to have a lib directory at the root of each package that httpd seems to be looking for.

Note 'Library not loaded: /usr/local/opt/apr-util/lib/libaprutil-1.0.dylib'

I tried reinstalling php55 via homebrew but still ran into the issue.

What ultimately worked was creating symbolic links in the appropriate places.

So in the root directory of apr and apr-util: /u/l/C/a/1.5.2 (master|✔) $ ls CHANGES INSTALL_RECEIPT.json LICENSE NOTICE README bin libexec

You will notice there is no lib directory. However there is a libexec directory and within that directory is the lib directory that httpd is looking for.

So at the root of the apr and apr-util directory type this: $>ln -sf ./libexec/lib ./lib

So now httpd will be able to find /usr/local/opt/apr-util/lib/libaprutil-1.0.dylib and /usr/local/opt/apr/lib/libapr-1.0.dylib

0
Arpit Aggarwal On

I suggest you run:

$ brew update && brew upgrade

Or

$ brew reinstall php55