Eu não acho que mudar o conteúdo de / usr / include (como sugerido em outra resposta, e em outros tópicos semelhantes) seja uma boa idéia em geral; essa é a "propriedade" da Apple. Uma pergunta semelhante no StackOverflow , no contexto de uma instalação Homebrew, em vez disso, recomends link dentro de / usr / local / include, o que é mais seguro, mas ainda provavelmente não é uma boa idéia, já que a Homebrew sustenta isso.
Acho que uma solução melhor é seguir as instruções de instalação do matplotlib e usar um arquivo setup.cfg para especificar os locais dos recursos que não estão onde eles esperam. Para fazer isso, deixando o pip gerenciar a instalação:
-
Faça o download da fonte mpl e descompacte-a no DIR (por exemplo, DIR = matplotlib-1.3.1).
-
cd DIR
, copie 'setup.cfg.template' para 'setup.cfg' e edite a seção de diretórios para se parecer com o seguinte (supondo que você tenha instalado freetype2 em / usr / local, por exemplo, via Homebrew) :[directories] # Uncomment to override the default basedir in setupext.py. # This can be a single directory or a comma-delimited list of directories. #basedirlist = /usr basedirlist = /usr/local/include/freetype2/
-
Crie o matplotlib no local (mas não o instale) por meio de:
python setup.py build_ext
(demora cerca de um minuto no meu MacBook Pro). -
Instale com pip dentro desse diretório:
pip install .
(observe o ponto!).
O Pip irá reconhecê-lo como matplotlib e indexar adequadamente.
Eu já tinha as dependências do mpl instaladas quando fiz isso, então não tenho certeza se a falta de algumas delas complica isso.