Tôi đã được yêu cầu khởi chạy một trang web mà người khác xây dựng. Đây là một trang web cửa hàng Wordpress cần Memcached để chạy và tôi đã gặp sự cố khi để Memcached và plugin php memcache hoạt động trên máy chủ cục bộ của tôi. Trước khi cài đặt memcached và plugin PHP memcache, tôi sẽ gặp lỗi này:
Fatal error: Class 'Memcache' not found in [Path]wp-content/object-cache.php on line 350
Bây giờ tôi đã cài đặt memcach và plugin PHP memcache (thông qua Homebrew), tôi nhận được trang "Không nhận được dữ liệu" và nhận được lỗi này trong nhật ký lỗi Apache của tôi:
dyld: lazy symbol binding failed: Symbol not found: _mmc_queue_pop
Referenced from: /usr/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
Expected in: flat namespace
dyld: Symbol not found: _mmc_queue_pop
Referenced from: /usr/lib/php/extensions/no-debug-non-zts-20090626/memcache.so
Expected in: flat namespace
[Sat May 05 16:38:27 2012] [notice] child pid 26491 exit signal Trace/BPT trap (5)
Tôi đã cố gắng tìm kiếm pid đó trong Activity Monitor nhưng không có kết quả và nó thay đổi mỗi khi tôi cố tải trang. Ngoài ra, tôi không thể tìm thấy bất cứ điều gì về _mmc_queue_pop ở bất cứ đâu.
Tôi đang chạy Mac OSX Lion, PHP ver 5.3.8, Memcached ver 1.4.13 và plugin Memcache PHP ver 3.0.6.
Có ai biết làm thế nào tôi có thể sửa lỗi này?
Cảm ơn!
-fgnu89-inline
trongCFLAGS
/CXXFLAGS
. Điều gì xảy ra làinline
từ khóa theo quy tắc mới gây ra_mmc_queue_pop
nội tuyến trong tất cả các trường hợp, không đểmemcache.so
lại liên kết động.