Cuối cùng tôi đã tìm được giải pháp. Hầu hết mọi thứ đều ở đây: http://www.september28.co.uk/blog/2011/11/24/php-imap-support-in-mac-os-x-lion-without-recompiling-php/
Máy của tôi là Macbook Pro cuối năm 2011 với MacOSX 10.7.4, PHP 5.4. cài đặt qua các hướng dẫn: http://www.hirmet.com/mac-os-x-lion-upgrade-to-php-5-4
Dưới đây là một bước-by-step cho những người có một thiết lập tương tự hoặc giống hệt nhau:
Tải nguồn imap từ url này, tập trung vào một với ngày gần đây nhất mà doesn' t kết thúc trong "Z": ftp://ftp.cac.washington.edu/imap/
Không lưu trữ, hãy vào thư mục, chạy các lệnh sau:
$ make osx EXTRACFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"
lệnh trên sẽ ném một loạt các cảnh báo vào bạn, nhưng phải hoàn thành thành công, không giống như các lệnh ban đầu được đề xuất trong bài đăng trên blog của september28.
Tiếp theo, thực hiện như sau:
$ sudo cp c-client/*.h /usr/local/include/
$ sudo cp c-client/*.c /usr/local/lib/
$ sudo cp c-client/c-client.a /usr/local/lib/libc-client.a
Một khi điều này được thực hiện, đi vào thư mục nguồn php tải về nếu bạn đã thực hiện nâng cấp một tùy chỉnh như tôi đã làm (theo liên kết thứ hai trong câu trả lời) và xây dựng phần mở rộng imap.so cho hệ thống của bạn. Nếu bạn không xây dựng một phiên bản tùy chỉnh, chỉ cần tải về nguồn PHP cho phiên bản bạn đã cài đặt và sử dụng nó, nó không quan trọng.
$ cd ~/Downloads/Php-5.4.4/ext/imap
$ phpize
$ ./configure --with-imap==/usr/local/imap-2007 --with-kerberos --with-imap-ssl
$ make
Sau khi thực hiện, làm như sau:
$ sudo cp modules/imap.so /usr/lib/php/extensions/no-debug-non-zts-20100525/
... hoặc nếu thư mục mở rộng PHP của bạn là khác nhau, đặt đó (bạn sẽ nhìn thấy vị trí trong phpinfo();)
Khởi động lại apache và bạn sẽ sẵn sàng sử dụng.
$ sudo apachectl restart
Khi tôi cố gắng làm: làm OSX EXTRACFLAGS = "- vòm i386 -arch x86_64 -g -os -pipe -no-cpp-precomp" trên OS X Mountain Lion của tôi, tôi nhận được lỗi này: - bash: $: lệnh không tìm thấy Tôi nên làm gì để tiếp tục? –
bỏ qua $ từ mọi lệnh bạn nhập, đó chỉ là biểu tượng đầu vào bash. – Swader
Tôi phải làm thêm một bước, trong php.ini của tôi, tôi đã phải thêm phần mở rộng bằng tay. $ sudo nano php.ini -> tìm kiếm phần mở rộng động -> add extension = "/ usr/lib/php/extensions/no-debug-non-zts-20100525/imap.so" -> lưu và thoát -> khởi động lại apache một lần nữa – jolyonruss