Schedule a Free Consultation

How to compile IMAP with SSL for PHP on OSX – works on MAMP as well

Read Article

This tutorial is an attempt to alleviate the headaches for all those that need to have IMAP with SSL running on OSX 😃

Needed stuff

autoconf
openssl
libxml2
imap2007 install with brew “brew install imap-uw”
OR
download from https://www.mirrorservice.org/sites/ftp.cac.washington.edu/imap/ (the archive without Z at the end ) imap-2007e
To install libxml2, you can use brew: brew install openssl libxml2 mcrypt
To link openssl to libxml2: brew link openssl libxml2 –force
See screenshot below:

installing_openssl_libxm12_mcrypt

Steps

Download map-2007e, unzip and run with terminal
make osx EXTRACFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp” 
it will create a folder c-client and might give a few warning, if it’s not fatal error, go on
use the following commands after running the command and the folder c-client is created
sudo mkdir -p /usr/local/include
sudo cp c-client/*.h /usr/local/include/
sudo mkdir /usr/local/lib
sudo cp c-client/*.c /usr/local/lib/
sudo cp c-client/c-client.a /usr/local/lib/libc-client.a
Now, download the version of PHP you require ( the one you use in MAMP )
– go to /Applications/MAMP/bin/php/<your_php_version> and create the folders /include/php/
– extract the php files there
– open terminal in that folder and run
./configure
cd ext/imap
phpize
./configure --with-imap=/usr/local/imap-2007 --with-kerberos --with-imap-ssl=/usr/
make
if
./configure –with-imap=/usr/local/imap-2007 –with-kerberos –with-imap-ssl=/usr/ fails
TRY
imap-2007f = depends on which one you installed
/Applications/MAMP/bin/php/php5.5.26/bin/php-config path to your php from MAMP for which you need the map with SSL
env LDFLAGS=”-lssl -lcrypto” ./configure –with-imap=/usr/local/imap-2007f –with-kerberos –with-imap-ssl –with-php-config=/Applications/MAMP/bin/php/php5.5.26/bin/php-config
if needed for –with-imap-ssl do –with-imap-ssl=/path_to_folder_that_contains evp.h file

Now pray 🙂 

If your prayers have been answered, go to the extracted php files, go to folder ext/imap/modules/ and copy map.so and map.la to

/Applications/MAMP/bin/php/YOUR_PHP_VERSION/lib/php/extensions/no-debug-non-zts-20100525/
Tutorials that do not work from end to end, but they are worth mentioning as they provided useful information:

This was address further up. Simply swap out:


./configure --with-imap=/usr/local/imap-2007f --with-kerberos --with-imap-ssl

With:


LDFLAGS="-lssl -lcrypto" ./configure --with-imap=/usr/local/imap-2007f --with-kerberos --with-imap-ssl

Relax and enjoy 🙂

Now drop us a line in comments and let us know if you’ve managed to make it work for you or if you still have issues.

Navigate to

Check some other articles we wrote

How to Choose a WordPress Expert for Your Website
While WordPress is a user-friendly platform for creating simple websites, things can quickly become complex when starting a business website. Custom functionalities, complicated platform integrations, cybersecurity, compliance, and optimizations are all critical factors you must consider. A WordPress expert can provide expert guidance, support, and services to help businesses navigate these complexities and create a […]
How To Pick Website Photos That Make Your Website Look More Professional
Learn nine simple tricks the pros use to pick better website photos and make your website look more professional
5 WordPress mistakes you’re making and how to solve them
Everybody makes mistakes. Maybe some of them might be small, like buying the wrong kind of milk, while others can be more serious, like forgetting to bring your gift to someone’s birthday party. Bottom line is that every single one of us makes mistakes. And to be honest, mistakes are not entirely bad. More often […]