zlib está faltando, o que quebra Haxe e pip no Mac OS X 10.11 (El Capitan)

2

Eu fiz o upgrade para o El Capitan (versão 10.11 Beta 7, build 15A263e) há alguns dias. Além de questões relacionadas a permissões, tudo parecia funcionar bem. No entanto, quando tento executar algumas bibliotecas Haxe ou uso o pip do gerenciador de pacotes Python, recebo erros relacionados a zlib , que não sei como resolver.

O erro Haxe ocorre quando tento executar haxelib run lime setup e recebo isso:

Called from /usr/lib/haxe/std/neko/_std/haxe/zip/Compress.hx line 60
Uncaught exception - load.c(237) : Failed to load library : zlib.ndll (dlopen(zlib.ndll, 1): image not found)

Quando tento rodar o pip, que instalei pelo Homebrew, recebo isso:

Traceback (most recent call last):
File "/usr/local/bin/pip", line 9, in <module>
load_entry_point('pip==7.1.2', 'console_scripts', 'pip')()
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 558, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)  File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2682, in load_entry_point
return ep.load()
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2355, in load
return self.resolve()
File "/usr/local/lib/python2.7/site-packages/pkg_resources/__init__.py", line 2361, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "/Library/Python/2.7/site-packages/pip/__init__.py", line 15, in <module>
from pip.vcs import git, mercurial, subversion, bazaar  # noqa
File "/Library/Python/2.7/site-packages/pip/vcs/mercurial.py", line 10, in <module>
from pip.download import path_to_url
File "/Library/Python/2.7/site-packages/pip/download.py", line 38, in <module>
from pip._vendor import requests, six
File "/Library/Python/2.7/site-packages/pip/_vendor/requests/__init__.py", line 58, in <module>
from . import utils
File "/Library/Python/2.7/site-packages/pip/_vendor/requests/utils.py", line 26, in <module>
from .compat import parse_http_list as _parse_list_header
File "/Library/Python/2.7/site-packages/pip/_vendor/requests/compat.py", line 7, in <module>
from .packages import chardet
File "/Library/Python/2.7/site-packages/pip/_vendor/requests/packages/__init__.py", line 3, in <module>
from . import urllib3
File "/Library/Python/2.7/site-packages/pip/_vendor/requests/packages/urllib3/__init__.py", line 10, in <module>
from .connectionpool import (
File "/Library/Python/2.7/site-packages/pip/_vendor/requests/packages/urllib3/connectionpool.py", line 38, in <module>
from .response import HTTPResponse
File "/Library/Python/2.7/site-packages/pip/_vendor/requests/packages/urllib3/response.py", line 5, in <module>
import zlib
ImportError: No module named zlib

Isto é adicional aos erros de permissão com pip; Não consigo executar pip sem usar sudo , mas acho que isso provavelmente não está relacionado.

Alguma ideia? Eu acho que construir a falta do zlib.ndll pode corrigir o problema, mas não sei qual é a maneira "certa" de fazer isso.

    
por Steve Richey 27.08.2015 / 02:39

1 resposta

2

O Haxe requer que o neko seja configurado corretamente para executar ferramentas como o haxelib. Você pode instalar o neko via Homebrew com os seguintes passos. Primeiro você precisa de zlib e sqlite porque neko requer ambos.

brew install zlib sqlite3

Agora você precisará forçar o Homebrew a vinculá-los, já que eles são apenas bibliotecas de barris e neko precisa dos arquivos de inclusão em / usr / local / include.

brew link zlib --force
brew link sqlite3 --force

Finalmente, instale o neko pelo Homebrew. Certifique-se de também definir NEKOPATH no diretório homebrew criado.

brew install neko --HEAD
    
por 01.10.2015 / 23:41