2016-03-29 60 views
0

我在旧版本的buildroot中添加了对host-setuptools的支持。这似乎需要zlib来安装host-setuptools。我可以看到zlib和host-zlib是在setuptools之前生成的,但是我仍然收到一个错误,说它找不到(似乎我有zlib但python文件没有找到它):包在buildroot中找不到zlib

z = zipfile.ZipFile(zip_filename, mode, compression=compression) 
    File "/media/vmpart/svn_snmp_x86/buildroot/output/host/usr/lib/python2.7/zipfile.py", line 679, in __init__ 
    "Compression requires the (missing) zlib module" 
RuntimeError: Compression requires the (missing) zlib module 
make: *** [/media/vmpart/svn_snmp_x86/buildroot/output/build/host-setuptools-20.3.1/.stamp_host_installed] Error 1 

有没有想法?

这里是make文件:

############################################################# 
# 
# setuptools 
# 
############################################################# 

SETUPTOOLS_VERSION = 20.3.1 
SETUPTOOLS_SOURCE = setuptools-$(SETUPTOOLS_VERSION).tar.gz 
SETUPTOOLS_SITE = https://pypi.python.org/pypi/setuptools 
HOST_SETUPTOOLS_DEPENDENCIES = python zlib host-zlib 

define HOST_SETUPTOOLS_BUILD_CMDS 
    (cd $(@D); $(HOST_DIR)/usr/bin/python setup.py build) 
endef 

define HOST_SETUPTOOLS_INSTALL_CMDS 
    (cd $(@D); $(HOST_DIR)/usr/bin/python setup.py install --prefix=$(HOST_DIR)/usr) 
endef 

define HOST_SETUPTOOLS_UNINSTALL_TARGET_CMDS 
    $(MAKE1) -C $(@D) uninstall 
endef 

$(eval $(call GENTARGETS,package,setuptools)) 
$(eval $(call GENTARGETS,package,setuptools,host)) 

的Python使文件:http://pastebin.com/ZttjC7sV

回答

3

问题不在于你是否有zlib的或主机zlib的启用/内置,但你的主机蟒蛇是否用zlib支持或不用。

由于您不是在说您正在使用的是哪个版本的Buildroot,所以不幸的是,无法提供更多提示,因为我无法了解当时如何打包/构建Python。

另外,请升级:我们在Buildroot中有host-python-setuptools,因为现在已经很长时间了。通过升级,您将受益于众多其他Buildroot改进。

与其花时间或金钱投入时间或金钱来回报功能,您应该考虑花费相同的时间/金钱来升级到新版本。

+0

感谢您的帮助,让我困惑的是我在主机-python make中有--enable-zlib,它似乎没有任何影响。如果在构建失败后删除python和setuptools文件夹,构建将会成功。相信我,我想升级时,我们可以:) Python使文件http://pastebin.com/ZttjC7sV – Paul