Configure error memcached support requires zlib

configure: error: memcached support requires ZLIB. Use —with-zlib-dir= to specify the prefix where ZLIB headers and library are located #46849 Comments brew install —HEAD josegonzalez/php/php70-memcached ==> Installing php70-memcached from josegonzalez/php ==> Cloning https://github.com/php-memcached-dev/php-memcached.git Updating /Library/Caches/Homebrew/php70-memcached—git ==> Checking out branch php7 ==> /usr/local/opt/php70/bin/phpize ==> ./configure —prefix=/usr/local/Cellar/php70-memcached/HEAD —with-php-config=/usr/local/opt/php70/bin/php-config — Last 15 lines from /Users/hanjiafeng/Library/Logs/Homebrew/php70-memcached/02.configure: checking for […]

Содержание

  1. configure: error: memcached support requires ZLIB. Use —with-zlib-dir= to specify the prefix where ZLIB headers and library are located #46849
  2. Comments
  3. Footer
  4. linux-notes.org
  5. Установка memcached в Unix/Linux(CentOS/Debian/Ubuntu)
  6. Установка memcached в Debian/Ubuntu
  7. Установка memcached в RedHat/CentOS/Fedora
  8. Настройка memcached
  9. Тестирование/проверка работы Memcached
  10. Проверка настройки MemCache
  11. Настройка фаэрвола для Memcached
  12. Добавить комментарий Отменить ответ
  13. Memcached support #132
  14. Comments
  15. Не удается выполнить phpize или настроить расширение в OS X 10.9 Mavericks
  16. Обновить
  17. Error memcached support requires libmemcached – How to fix
  18. Causes and Fixes for “Error memcached support requires libmemcached”
  19. Plesk
  20. cPanel
  21. Conclusion
  22. PREVENT YOUR SERVER FROM CRASHING!

configure: error: memcached support requires ZLIB. Use —with-zlib-dir= to specify the prefix where ZLIB headers and library are located #46849

brew install —HEAD josegonzalez/php/php70-memcached
==> Installing php70-memcached from josegonzalez/php
==> Cloning https://github.com/php-memcached-dev/php-memcached.git
Updating /Library/Caches/Homebrew/php70-memcached—git
==> Checking out branch php7
==> /usr/local/opt/php70/bin/phpize
==> ./configure —prefix=/usr/local/Cellar/php70-memcached/HEAD —with-php-config=/usr/local/opt/php70/bin/php-config —
Last 15 lines from /Users/hanjiafeng/Library/Logs/Homebrew/php70-memcached/02.configure:
checking for nawk. no
checking for awk. awk
checking if awk is broken. no
checking whether to enable memcached support. yes, shared
checking for libmemcached. yes, shared
checking whether to enable memcached session handler support. yes
checking whether to enable memcached igbinary serializer support. no
checking whether to enable memcached json serializer support. no
checking whether to enable memcached msgpack serializer support. no
checking whether to enable memcached sasl support. yes
checking whether to enable memcached protocol support. no
checking whether to use system FastLZ bibrary. no
checking for ZLIB. yes, shared
checking for pkg-config. /usr/local/opt/pkg-config/bin/pkg-config
checking for zlib location. configure: error: memcached support requires ZLIB. Use —with-zlib-dir=

to specify the prefix where ZLIB headers and library are located

hi,gays
I have a problem like that, please help me.

The text was updated successfully, but these errors were encountered:

Please do these things, thanks.

Do information on https://git.io/brew-troubleshooting really help to solve this?
Because it didn’t for me. I had to:

Install zlib using brew.

Edit formula with brew edit homebrew/php/php70-memcached and add:

@martinsik If you don’t follow that: we don’t have enough information to help.

© 2023 GitHub, Inc.

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

Источник

linux-notes.org

Установка memcached в Unix/Linux(CentOS/Debian/Ubuntu)

Memcached — это система которая кеширует все данные в память. Это означает, что вы можете генерировать кэш самым быстрым способом что позволит быстрее использовать приложения с самыми современными языками программирования, таких как Python, PHP, Ruby, и т.д. В своей теме «Установка memcached в Unix/Linux(CentOS/Debian/Ubuntu)» я расскажу как можно установить memcached на Unix/Linux и на готовом примере, покажу как я это делал. Для тестирования, я выбрал CentOS 6 и Debian 8.

Установка memcached в Debian/Ubuntu

Во-первых, я рекомендую обновить систему:

Теперь используйте следующую команду для установки Memcached:

Теперь я установлю PHP с несколькими необходимыми пакетами:

Также необходимо установить модуль MemCache для PHP:

Наконец выполняем установку расширения Memcache php с помощью PECL:

Теперь включим поддержку MemCache в PHP. Прежде чем создавать новый файл просто убедитесь, возможно он уже существует и если файл уже существует просто пропустите команду что ниже:

После всех изменений, производим перезапуск службы Apache:

Установка memcached в RedHat/CentOS/Fedora

Для начала, обновим ОС:

После обновления, выполняем установку memcached:

Настройка memcached

Убедитесь, что в данном файле конфигурации имеются следующие строки:

PORT 11211 является портом прослушивания по умолчанию для Memcached.
USER — это пользователь memcached от которого будет запущен демон.
MAXCONN — максимальные количество возможных соединений.
CACHESIZE — это количество мегабайт (64 MB) для использования, если у вас есть много трафика, это хорошо для большинства малых/средних сайтов. Для загруженного сервера вы можете увеличить его на 512 или 1 Гб (1024 MB).
OPTIONS=»-l 127.0.0.1″ — это означает что memcached будет слушать только на localhost-е, избегая каких-либо внешних подключений. Вы можете установить IP-адрес сервера. По умолчанию он установлен в INADDR_ANY. Это важно опция, поскольку нет никакого другого способа обеспечить установку. Привязка к внутреннему или межсетевому интерфейсу предлагается.

Для CentOS/RHEL 6/5:

запуск Memcached выполняется:

Пропишем memcached в загрузку ОС:

Для CentOS/RHEL 7:

Устновка PHP расширений с Memcached.

Если PECL при установке задаст вам вопрос, который вы видите ниже, просто нажмите ENTER:

У меня возникла ошибка:

Добавим модуль memcache.so module в php.ini

Перезапускаем службы.

Если на вашем сервере установлен php-fpm, то чтобы перезапустить его, выполните:

Если на вашем сервере установлен apache, то чтобы перезапустить его, выполните:

Для CentOS/RHEL 7:

Для CentOS/RHEL 6/5:

Тестирование/проверка работы Memcached

Проверка настройки MemCache

Использование следующую команду, чтобы проверить и убедиться, что Memcached служба работает нормально:

Теперь нужно проверить, включено ли расширение и удостоверимся что работает правильно. Создайте файл в домашнем каталоге и пропишите следующий ПХП код:

Если открыть сайт, то увидим:

Проверьте, установлен ли Memcached как модуль PHP:

Настройка фаэрвола для Memcached

Добавьте слудеющие правила для разрешения соедения (для работы memcached):

Проверяем, запущен ли демон memcached на ОС:

На этом, статья «Установка memcached в Unix/Linux(CentOS/Debian/Ubuntu)» завершена.

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Источник

Memcached support #132

Wondering if anyone has gotten memcached (not memcache) to work? Trying to build in php:5.5.29-apache to get the php memcached module installed. I have tried the following to no avail. Any help is greatly appreciated.

Dockerfile 1

Notes:

Dockerfile 2

Notes:

Dockerfile 3

Notes:

The text was updated successfully, but these errors were encountered:

@polds I think you want to use «Dockerfile 2», but you need to install libz-dev to make configure happy.

Actually, nevermind. I thought you were using docker-php-ext-install 😕

You need something like this:

@md5 thank you that was indeed it with the following modification (for future readers):

That reminds me that @helderco once mentioned creating a docker-php-pecl-install script: #115 (comment)

The smallest layer for the pecl install is probably the following:

^ That worked as well.

Thanks @hairmare I was being lazy since I don’t tend to be as aggressive with the sizes of «normal» images.

I think you’ll also want a rm -rf /var/lib/apt/lists/* in there as well since apt-get clean doesn’t clean as much as it could.

I failed to get memcached to work on PHP7. Finally managed to do so using the following lines, using the php7 branch and building from source:

Is there any better way?

Thanks @paolomainardi, looks a lot easier. I realise now how the bundled docker-php-ext.. scripts work.

Thank you all. I further shortened #132 (comment) a little bit. Now, I am using this config in my image for Drupal https://github.com/INsReady/php-fpm-for-cms/blob/master/7.0/Dockerfile#L11

With last version php:7.0-fpm stop working

@vitalyzhakov, I think that is related to #266.

Did anyone manage to fix this problem? I am reading through #266 but have no clue if and how I should solve this..

This code works for me under php 7.0.8-fpm

This may be obvious, but for someone (like me) it’s not.

Notice that the above snippet puts the memcached library into /var/www/html/ . When you create a volume from a host directory and mount that into /var/www/html , docker «overwrites» that path and your module «disappears».

So if you want to mount a volume into /var/www/html , change the snippet to clone the repo into another directory and adjust the corresponding line that creates the php config file.

Something like this works for me:

Please do it the right way: use the docker-php-* scripts and cleanup afterwards.

The best practice should look something like this:

This way you use docker-php-source , don’t have to create an ini file, call phpize and make yourself and most important this way you remove not needed -dev packages and all their dependencies (except for runtime dependencies in $doNotUninstall ) to save disk-space.

@adminblogger nice! Thx!

If your favor. Tell me pls. Where can i find runtime dependencies for another extensional?
I can mark to delete git, zlib1g-dev , but someone once?
Using on install

  • libfreetype6-dev libjpeg62-turbo-dev libmcrypt-dev libpng12-dev — for gd
  • zlib1g-dev libicu-dev — for intl
  • libpq-dev — for pdo_pgsql
  • libmagickwand-dev — for imagick

For anyone who finds this because their Dockerfile has begun to fail while trying «pecl install memcached» (with the error «pecl/memcached requires PHP (version >= 7.0.0), installed version is [5.6.something]», on 02/08/17 the pecl memcached package version 3.0 was released, requiring php 7.0 or higher.

To continue using memcached with php 5.6.x, update your Dockerfile to use version 2.2.0 of the memcached package:

pecl install memcached-2.2.0

pecl install memcached

The relevant section of my Dockerfile, as a result, is:

Источник

Не удается выполнить phpize или настроить расширение в OS X 10.9 Mavericks

Я пытаюсь построить расширение memcached на OS X 10.9 Mavericks для использования со встроенным PHP 5.4, изначально я попытался pecl install memcached но это бросило следующее.

Поэтому я создал tmp-каталог и выполнил pecl download memcached , разархивировал код и cd’d в соответствующий каталог.

Пытаясь выполнить phpize, он возвращал следующее:

Я запустил zlib некоторое время назад и указал ./configure при моей установке. ./configure —with-zlib-dir=/usr/local/Cellar/zlib/1.2.8 Мне было встречено следующее сообщение об ошибке:

Итак, теперь мне интересно, как лучше всего действовать здесь … /usr/include/ вообще не существует … это вещь Маверикс? Я не помню, чтобы эта проблема возникла в 10.8.

Я мог бы попробовать заварить установку php-devel но я полагаю, что это не будет подходящей версией того, что мне нужно? Любая помощь будет принята с благодарностью здесь

Обновить

locate php_session.h показывает

должен ли я просто использовать это для ожидаемого местоположения или есть какой-то способ сделать это с помощью XCode? У меня установлены инструменты командной строки …

запустите xcode-select —install чтобы установить инструменты командной строки XCode5, затем sudo pecl install memcache . Тебе должно быть хорошо.

После установки XCode5 Command Line Tools в качестве наиболее подходящего пользователя (xcode-select -install) я не смог выполнить «sudo pecl install memcache», потому что пропал ключ. Мне пришлось установить PEAR и PECL после этого руководства: http://techtastico.com/post/como-instalar-pear-y-pecl-en-os-x-mavericks/ . Тогда все сработало хорошо. Благодаря!

У меня была эта проблема, и это было связано с тем, что MAMP не имел всех источников PHP.

Я нашел это очень полезное решение, которое объясняет, как их загрузить и настроить: https://stackoverflow.com/a/11175197/369326

Обратите внимание, что компоненты MAMP не включают дополнительные функции для любых версий PHP выше, чем php 5.4.10, но вы можете загрузить дополнительные функции из http://php.net/releases .

Как указано выше, но не используя установку xcode. Попробуйте вручную установить ключ:

Источник

Error memcached support requires libmemcached – How to fix

by Sushali Dasan | May 31, 2021

Stuck with “Error memcached support requires libmemcached”? we can help you.

Often while trying to install memcached we may end up with this error. This error is common for both Plesk and cPanel.

Here at Bobcares, we often handle requests from our customers to fix similar errors as a part of our Server Management Services. Today we will see how our support engineers fix this for our customers.

Causes and Fixes for “Error memcached support requires libmemcached”

We will see what causes this error in Plesk as well as cPanel servers along with their fixes.

Plesk

The error typically looks like the following one in Plesk servers:

Cause

The libmemcached-devel package missing.

Steps to fix this error

Following are the steps to fix this error in the Plesk server.

1. First log in to the server via SSH.

2. Then use the following command to install the package depending upon the operating system(OS):

RHEL/CentOS/CloudLinux:

Ubuntu/Debian:

cPanel

The error typically looks like the following one in cPanel servers:

If Installing memcached from WHM » Software » Module Installers was not successful it triggers the error. A typical error may look like the one given below.

The exact steps for the installation given below:

1.Run the following commands:

2. After installing these components we have to create the following file:

For 32-bit machine

For 64-bit machine

3. Then Run the following commands:

4. Next, we can install libsasl2 using the following command:

5. Then we will install libmemcached using the following command:

6. Now we can run the following to check if memcached.so is installed into /usr/local/lib/php.ini file. We can add it if is it not.

7. We can check the extension directory that we are using, with the following command:

8. Also, to preserve the memcached.so module on EasyApache recompiles we have to do the following:

This will create a posteasyapache script that will ensure memcached.so is copied from /root/memcached.so back into the php extension directory.

9. Finally using the following commands we can ensure that the installation was done properly and is complete.

[Still, stuck with the error? We can help you]

Conclusion

In short, we saw how our Support Techs fix “error memcached support requires libmemcached” for our customers.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

Источник

brew install —HEAD josegonzalez/php/php70-memcached
==> Installing php70-memcached from josegonzalez/php
==> Cloning https://github.com/php-memcached-dev/php-memcached.git
Updating /Library/Caches/Homebrew/php70-memcached—git
==> Checking out branch php7
==> /usr/local/opt/php70/bin/phpize
==> ./configure —prefix=/usr/local/Cellar/php70-memcached/HEAD —with-php-config=/usr/local/opt/php70/bin/php-config —
Last 15 lines from /Users/hanjiafeng/Library/Logs/Homebrew/php70-memcached/02.configure:
checking for nawk… no
checking for awk… awk
checking if awk is broken… no
checking whether to enable memcached support… yes, shared
checking for libmemcached… yes, shared
checking whether to enable memcached session handler support… yes
checking whether to enable memcached igbinary serializer support… no
checking whether to enable memcached json serializer support… no
checking whether to enable memcached msgpack serializer support… no
checking whether to enable memcached sasl support… yes
checking whether to enable memcached protocol support… no
checking whether to use system FastLZ bibrary… no
checking for ZLIB… yes, shared
checking for pkg-config… /usr/local/opt/pkg-config/bin/pkg-config
checking for zlib location… configure: error: memcached support requires ZLIB. Use —with-zlib-dir=

to specify the prefix where ZLIB headers and library are located

READ THIS: https://git.io/brew-troubleshooting
If reporting this issue please do so at (not Homebrew/homebrew):
https://github.com/josegonzalez/php/issues

hi,gays
I have a problem like that, please help me.

Memcached — это система которая кеширует все данные в память. Это означает, что вы можете генерировать кэш самым быстрым способом что позволит быстрее использовать приложения с самыми современными языками программирования, таких как Python, PHP, Ruby, и т.д. В своей теме «Установка  memcached в Unix/Linux(CentOS/Debian/Ubuntu)» я расскажу как можно установить memcached на Unix/Linux  и на готовом примере, покажу как я это делал. Для тестирования, я выбрал CentOS 6 и Debian 8.

Установка  memcached в Debian/Ubuntu

Во-первых, я рекомендую обновить систему:

$ sudo apt-get update

Теперь используйте следующую команду для установки Memcached:

$ sudo apt-get install memcached

Теперь я установлю PHP с несколькими необходимыми пакетами:

# apt-get install php5 php5-dev php-pear php5-memcached

Также необходимо установить  модуль MemCache для PHP:

# apt-get install libmemcached-dev build-essential

Наконец выполняем установку расширения Memcache php с помощью PECL:

# pecl install memcache

Теперь включим поддержку MemCache в PHP. Прежде чем создавать новый файл просто убедитесь, возможно он уже существует и если файл уже существует просто пропустите команду что ниже:

$ echo "extension=memcache.so" > /etc/php5/apache2/conf.d/20-memcache.ini

После всех изменений, производим перезапуск службы Apache:

# service apache2 restart

Установка  memcached в RedHat/CentOS/Fedora

Для начала, обновим ОС:

# yum update

После обновления, выполняем установку memcached:

# yum install memcached

Настройка memcached

Отредактируем файл:

$ vim /etc/sysconfig/memcached

Убедитесь, что в данном файле конфигурации имеются следующие строки:

PORT="11211"
USER="memcached"
MAXCONN="256"
CACHESIZE="64"
OPTIONS="-l 127.0.0.1"

PORT 11211 является портом прослушивания по умолчанию для Memcached.
USER — это пользователь memcached от которого будет запущен демон.
MAXCONN — максимальные количество возможных соединений.
CACHESIZE  — это количество мегабайт (64 MB) для использования, если у вас есть много трафика, это хорошо для большинства малых/средних сайтов. Для загруженного сервера вы можете увеличить его на 512 или 1 Гб (1024 MB).
OPTIONS=»-l 127.0.0.1″ — это означает что memcached будет  слушать только на localhost-е, избегая каких-либо внешних подключений.  Вы можете установить IP-адрес сервера. По умолчанию он установлен в INADDR_ANY. Это важно опция, поскольку нет никакого другого способа обеспечить установку. Привязка к внутреннему или межсетевому интерфейсу предлагается.

Для CentOS/RHEL 6/5:

запуск Memcached выполняется:

# service memcached start

Пропишем memcached в загрузку ОС:

# chkconfig memcached on

Для CentOS/RHEL 7:

# systemctl enable memcached
# systemctl start memcached

Устновка PHP расширений с Memcached.

выполняем:

# yum install php-pear pecl_http php-devel

И выполняем:

$ pecl install memcache

Если PECL при установке задаст вам вопрос, который вы видите ниже, просто нажмите ENTER:

"Enable memcache session handler support? [yes]"

У меня возникла ошибка:

ERROR: `/var/tmp/memcache/configure --enable-memcache-session=yes' failed

Исправляем:

# yum install libmemcached libmemcached-devel

Получил следующую:

checking for zlib location... configure: error: memcached support requires ZLIB. 
Use --with-zlib-dir=<DIR> to specify the prefix where ZLIB headers and library are 
located ERROR: `/var/tmp/memcached/configure' failed

Фиксим:

# yum install zlib zlib-devel

Добавим модуль memcache.so module в php.ini

# echo "extension=memcache.so" >> /etc/php.ini

Перезапускаем службы. 

Если на вашем сервере установлен php-fpm, то чтобы перезапустить его, выполните:

# service php-fpm reload

Если на вашем сервере установлен apache, то чтобы перезапустить его, выполните:

Для CentOS/RHEL 7:

# systemctl restart httpd

Для CentOS/RHEL 6/5:

# service httpd restart

Тестирование/проверка работы Memcached

Проверка настройки MemCache

Использование следующую команду, чтобы проверить и убедиться, что Memcached служба работает нормально:

$ echo "stats settings" | nc localhost 11211

Теперь нужно проверить, включено ли расширение и удостоверимся что работает правильно. Создайте файл в домашнем каталоге и пропишите следующий ПХП код:

# echo "<?php phpinfo(); ?>" > /var/www/html/php_info.php

Если открыть сайт, то увидим:

memcache

Проверьте, установлен ли Memcached как модуль PHP:

# php -i | grep memcache -i

Настройка фаэрвола для Memcached

Добавьте слудеющие правила для разрешения соедения (для работы memcached):

iptables -A INPUT -p tcp --destination-port 11211 -m state --state NEW -m iprange --src-range 192.168.1.10-192.168.1.15 -j ACCEPT
iptables -A INPUT -p udp --destination-port 11211 -m state --state NEW -m iprange --src-range 192.168.1.10-192.168.1.15 -j ACCEPT

Проверяем, запущен ли демон memcached на ОС:

$ ps -aux | grep memcached

На этом, статья «Установка  memcached в Unix/Linux(CentOS/Debian/Ubuntu)» завершена.

916 votes

3 answers

Get the solution ↓↓↓

I have the issue installing a memcached’s module for php 7.1. I use MacOS High Sierra and [email protected] installing using homebrew. During the installation of memcached module for php using command

pecl install memcached

I received the errors:

checking for zlib location… configure: error: memcached support
requires ZLIB. Use —with-zlib-dir= to specify the prefix where
ZLIB headers and library are located ERROR:
`/private/tmp/pear/install/memcached/configure
—with-php-config=/usr/local/opt/[email protected]/bin/php-config —with-libmemcached-dir’ failed

But I have installed zlib. I can’t find a way how to install memcached module after the changes in homebrew repository.

2022-04-1

Write your answer


860

votes

Answer

Solution:

  1. pecl bundle memcached
  2. Change to the directory it output
  3. phpize
  4. Make sure libmemcached and zlib are installed (brew install libmemcached zlib)
  5. Get the zlib directory (brew list zlib)
  6. ./configure --with-zlib-dir=/usr/local/Cellar/zlib/1.2.11/ (replace the zlib path with the one from the previous command)
  7. make
  8. make install
  9. Add the extension line in your php.ini file (ex. change the paths to match what make install output. I added this to my/usr/local/etc/php/7.4/conf.d directory in a file called ext-memcached.ini

[memcached]
extension=memcached.so

  1. Verify you installed the modulephp -m should show you memcached in the outputted list


37

votes

Answer

Solution:

You can use env variablePHP_ZLIB_DIR to tell it where zlib is.

PHP_ZLIB_DIR=/usr/local/opt/zlib pecl install memcached

Full installation.

brew install zlib
yes no | PHP_ZLIB_DIR=$(brew --prefix zlib) pecl install memcached


829

votes

Answer

Solution:

To install memcached prerequisite

  • Install pkg-config and zlib usingbrew install pkg-config zlib
  • Check Php Version for which you installing should be linked.php -v tells you which php version is active for cli.
  • pecl config-get ext_dir will tell you which version configuration files are set.
  • Get configuration path for zlib that is required while installingbrew list zlib
    Install usingsudo pecl install memcached
    While installing it will askzlib directory [no] : in that paste zlib configuration path /opt/homebrew/Cellar/zlib/1.2.11 examplezlib directory [no] : /opt/homebrew/Cellar/zlib/1.2.11

Restart your php and nginx/apache2brew services restart [email protected]brew services restart nginxbrew services restart apache2

You can check extension is installed or not by usingphp -m.

Note : Am usingMacPro M1 silicon chip notebook. Installed usinghomebrew. struggle a lot to fix this issue.


Share solution ↓

Additional Information:

Date the issue was resolved:

2022-04-1

Link To Source

Link To Answer
People are also looking for solutions of the problem: regex stop at first match

Didn’t find the answer?

Our community is visited by hundreds of web development professionals every day. Ask your question and get a quick answer for free.


Similar questions

Find the answer in similar questions on our website.

Bug #56522 Fails to find zlib library
Submitted: 2005-09-02 11:34 UTC Modified: 2006-01-29 08:13 UTC
From: cyberlot at cyberlot dot net Assigned:
Status: Closed Package: memcache (PECL)
PHP Version: 5.0.3 OS: Fedora Core 4
Private report: No CVE-ID: None

 [2005-09-02 11:34 UTC] cyberlot at cyberlot dot net

Description:
------------
Can't use pear to install memcache anymore

memcache support requires ZLIB. Use --with-zlib-dir=<DIR>
`/tmp/tmprVj7sq/memcache-1.5/configure' failed


PHP compiles fine with zlib support and did not have to specify directory just --with-zlib

If I download memcache manually and do a 

phpize
./configure --with-zlib-dir=/usr/include

It compiles fine but it should look in /usr/include by default?

Reproduce code:
---------------
pear install memcache


Expected result:
----------------
A successfull install

Actual result:
--------------
 pear install memcache
downloading memcache-1.5.tgz ...
Starting to download memcache-1.5.tgz (14,291 bytes)
.....done: 14,291 bytes
4 source files, building
running: phpize
Configuring for:
PHP Api Version:         20031224
Zend Module Api No:      20041030
Zend Extension Api No:   220040412
configure.in:9: warning: underquoted definition of PHP_WITH_PHP_CONFIG
  run info '(automake)Extending aclocal'
  or see http://sources.redhat.com/automake/automake.html#Extending-aclocal
configure.in:32: warning: underquoted definition of PHP_EXT_BUILDDIR
configure.in:33: warning: underquoted definition of PHP_EXT_DIR
configure.in:34: warning: underquoted definition of PHP_EXT_SRCDIR
configure.in:35: warning: underquoted definition of PHP_ALWAYS_SHARED
acinclude.m4:19: warning: underquoted definition of PHP_PROG_RE2C
acinclude.m4:1915: warning: underquoted definition of PHP_TEST_BUILD
building in /var/tmp/pear-build-root/memcache-1.5
running: /tmp/tmprVj7sq/memcache-1.5/configure
checking build system type... i686-redhat-linux-gnu
checking host system type... i686-redhat-linux-gnu
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking whether gcc and cc understand -c and -o together... yes
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking for PHP prefix... /usr/local
checking for PHP includes... -I/usr/local/include/php -I/usr/local/include/php/main -I/usr/local/include/php/Zend -I/usr/local/include/php/TSRM
checking for PHP extension directory... /usr/local/lib/php/extensions/no-debug-non-zts-20041030
checking for re2c... exit 0;
checking for gawk... gawk
checking whether to enable memcache support... yes, shared
checking for the location of libz... no
checking for the location of zlib... configure: error: memcache support requires ZLIB. Use --with-zlib-dir=<DIR>
`/tmp/tmprVj7sq/memcache-1.5/configure' failed


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports

 [2005-09-02 11:53 UTC] cyberlot at cyberlot dot net

I can replicate the bug on another machine.

memcache 1.4 is installed fine, can not install memcache 1.5 same error php 5.0.3

Tried to upgrade a 5.1.0RC1 from memcache 1.4 same problem, can't seem to find zlib. PEAR upgraded in both cases.

I found a box with pear 1.3.5 instead of 1.3.6 same problem


pear install memcache-1.4 WORKS!!!! its only when trying to upgrade to the latest memcache-1.5

 [2005-09-10 10:51 UTC] email at steffenweber dot net

I?m having the same problem with PHP 4.4.0 and PEAR 1.3.6.

Using "PHP_ZLIB_DIR=/usr/lib pear upgrade memcache" the installation seems to work fine first, but at the end I get the following output and the extension does not work:

Build process completed successfully
Installing '/var/tmp/pear-build-root/install-memcache-1.5//usr/lib/php/extensions/no-debug-non-zts-20020429/memcache.so'
upgrade ok: memcache 1.5
Segmentation fault

 [2005-12-23 12:42 UTC] mikael at synd dot info

This issue should be fixed in the latest release 2.0.0, please verify that the issue does not persist by running

pear install pecl/memcache

 [2006-01-29 08:13 UTC] pear dot neufeind at speedpartner dot de

Thank you for your bug report. This issue has been fixed
in the latest released version of the package, which you can download at
http://pecl.php.net/get/memcache

Had same problem installing 1.5. The "trick" with setting PHP_ZLIB_DIR however worked excellent for me. Install with 2.0 even worked without any tricks. Marking it fixed in 2.0.

 [2007-07-12 11:22 UTC] jreck at reck dot dk

When I try to install memcache_2.1.2 with pear I get the following error:

# pear install -f memcache
downloading memcache-2.1.2.tgz ...
Starting to download memcache-2.1.2.tgz (22,285 bytes)
........done: 22,285 bytes
No handlers for package.xml version 2.0

#php #macos #memcached #pear #pecl

Вопрос:

В последнее время я пытаюсь установить расширение pecl memcache PHP на OSX Catalina с brew memcached установленным, и каждый раз, когда я пытаюсь выполнить процесс установки, я получаю следующую ошибку:

 configure: error: memcache support requires ZLIB. Use --with-zlib-dir=<DIR> to specify prefix where ZLIB include and library are located
 

Я пытался с pecl install memcache и pecl install --configureoptions='with-zlib-dir="path"' memcache безрезультатно. Он всегда получает одну и ту же точку и терпит неудачу.

Снимок экрана 2021-07-10 в 12 56 14 утра

Из того, что я посмотрел на различные темы, касающиеся установки пакета на вопрос, как представляется, с -D возможностью в pecl install команду, потому что, когда я вручную установить из исходного кода, передавая спор --with-zlib-dir=/usr/local/Cellar/zlib/1.2.11 на ./configure команду, он работает как шарм и устанавливает пакет, но не сейчас, перечисленных в pecl list установленных пакетах и не может быть удалено.

Проблема в том, что мне нужно pecl управлять установкой пакета, чтобы иметь возможность удалить его в любое время, когда среда меняется с проекта на защиту.

Ответ №1:

Быстрое решение этой проблемы (найдено через https://bugs.php.net/bug.php?id=56522) заключается в использовании переменной PHP_ZLIB_DIR вместо —with-zlib-dir.

т.е. PHP_ZLIB_DIR=/usr/local/Cellar/zlib/1.2.11 pecl install memcache

Я и раньше боролся с опцией-D — насколько я могу судить, она полностью сломана.

Комментарии:

1. Большое вам спасибо за ответ, он отлично работает так, как должен работать. Единственное изменение, которое я предлагаю для тех, кто еще рассматривает эту проблему, — это экспортировать путь в .bashrc или в .zshrc для будущих установок echo "export PHP_ZLIB_DIR=/usr/local/Cellar/zlib/1.2.11 pecl install memcache" > .bashrc . И не забудьте использовать sudo , если это возможно, во время установки, чтобы избежать проблем с разрешениями

Понравилась статья? Поделить с друзьями:
  • Configure error lzo enabled but missing openvpn
  • Configure error libxml2 library not found zabbix
  • Connection refused код ошибки
  • Connection refused socket error 10061 connection refused socket error 10061
  • Connection refused no further information minecraft как исправить