使用pip安装pylibmc时出错

问题描述 投票:0回答:11

您好,当我尝试使用 pip 在 OSX Lion 上安装 pylibmc 时,出现以下错误:

./_pylibmcmodule.h:42:10: fatal error: 'libmemcached/memcached.h' file not found

#include <libmemcached/memcached.h>

         ^

1 error generated.

error: command 'clang' failed with exit status 1

有什么线索可以解决这个问题吗?

python memcached osx-lion libmemcached
11个回答
143
投票

libmemcached 也可以使用 Homebrew 安装。

brew install libmemcached

此后,

pip install pylibmc
为我工作,无需指定任何其他参数。


38
投票

它位于 libmemcached 包中。要使用 macports 安装它:

sudo port install libmemcached

然后,假设您使用的是 pip:

pip install pylibmc --install-option="--with-libmemcached=/opt/local"

LIBMEMCACHED=/opt/local pip install pylibmc

pylibmc 文档中所述


33
投票

我通过检查 memcached 的安装位置解决了这个问题

$ which memcached
/usr/local/bin/memcached

然后在 pip install 之前设置 LIBMEMCACHED 环境变量:

$ export LIBMEMCACHED=/usr/local
$ pip install pylibmc

18
投票

Ubuntu 用户的回答:

sudo apt install libmemcached-dev zlib1g-dev

7
投票

我有同样的问题,因为我安装了 MEMCACHED 而不是 LIBMEMCACHED,所以要解决:

brew uninstall memcached #to remove wrong package

brew install libmemcached #install correct lib

pip install pylibmc

它对我有用!

:)


6
投票

对于那些在 Fedora 上找到答案的人:

sudo yum install libmemcached-devel


3
投票

使用brew安装Python3.6的macOS High Sierra遇到同样的错误。我的解决方案是导出这些标志,在评论中提到:Error when install pylibmc using pip

export LDFLAGS="-L/usr/local/lib"
export CPPFLAGS="-I/usr/local/include"

之后,

pip install
运行得很好。


2
投票

我通过从端口安装 memcached 修复了这个问题

您应该从 http://www.macports.org/

安装第一个 macports

然后运行此命令

sudo port install memcached

之后从 pypi 下载 pylibmc http://pypi.python.org/pypi/pylibmc 然后解压 .tar.gz 文件

python setup.py install --with-libmemcached=/opt/local

2
投票

此代码对我有用

  sudo apt-get install libmemcached-dev zlib1g-dev

  LIBMEMCACHED=/opt/local pip install pylibmc

0
投票

有时需要安装 X-Code 命令行工具。

 xcode-select -p

0
投票

这对我在 M1 Mac 上使用 osx 14.1.1 有效:

brew install libmemcached
export LIBMEMCACHED="/opt/homebrew"

pip install pylibmc
© www.soinside.com 2019 - 2024. All rights reserved.