如何在Amazon EC2 for Python 3.4上安装lxml

时间:2016-03-07 03:35:31

标签: amazon-ec2 install lxml python-3.4

通过从http://www.lfd.uci.edu/~gohlke/pythonlibs/下载.whl文件后我终于在我的计算机上安装了lxml后,我认为我的lxml安装问题已经过时了。但是,显然我错了。在EC2平台上似乎没有任何容易。我已经尝试了几乎所有我能想到的命令-sudo pip3 / pip3.4 / pip-3.4 / easy_install-3.4 lxml / lxml-3.5.0-cp34-none-win32.whl / lxml-3.5.0-cp34- none-win32.whl,STATIC_DEPS = true sudo pip3 / pip3.4 / pip-3.4 / easyinstall-3.4 install lxml。我一直收到Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?错误消息。 我也试过安装这些库,但到目前为止还没有成功。任何有关安装lxml或依赖库的帮助都将非常感激。

1 个答案:

答案 0 :(得分:1)

我最终能够通过执行以下过程来安装libxml2:

下载tar.gz.来自http://www.linuxfromscratch.org/blfs/view/7.7/general/libxml2.html的文件,将其传输到EC2实例,并从文件所在的目录运行tar -zxvf libxml2-2.9.2.tar.gz。 运行sudo yum install libxml2-devel libxslt-devel python34-devel。 (我之所以无法安装这些软件包的原因是我使用了无所不在的“-dev”措辞,这在这个特定的设置中无效。) 从libxml2-2.9.2文件夹(根据http://www.linuxfromscratch.org/blfs/view/7.7/general/libxml2.html的说明)运行

    sed \
  -e /xmlInitializeCatalog/d \
  -e 's/((ent->checked =.*&&/(((ent->checked == 0) ||\
          ((ent->children == NULL) \&\& (ctxt->options \& XML_PARSE_NOENT))) \&\&/' \
  -i parser.c

./configure --prefix=/usr --disable-static --with-history --with-python=/usr/bin/python3 && make

make install

然后。 。 。 ,当我终于跑sudo easy_install-3.4 lxml时,猜猜是什么。 。 。 ;是的,实例内存不足。所以,我必须从How do you add swap to an EC2 instance?应用以下修复:

sudo /bin/dd if=/dev/zero of=/var/swap.1 bs=1M count=1024
sudo /sbin/mkswap /var/swap.1
sudo /sbin/swapon /var/swap.1

之后,使用sudo easy_install-3.4 lxml安装需要一段时间,但它确实有效。