如何在 Amazon EC2 上为 Python 3.4 安装 lxml
How to install lxml on Amazon EC2 for 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 安装lxml。我不断收到 Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
错误消息。
我也尝试安装这些库,但到目前为止还没有成功。非常感谢任何有关安装 lxml 或依赖库的帮助。
我最终能够通过执行以下过程安装 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
安装花了很长时间,但成功了。
在我最终通过从 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 安装lxml。我不断收到 Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
错误消息。
我也尝试安装这些库,但到目前为止还没有成功。非常感谢任何有关安装 lxml 或依赖库的帮助。
我最终能够通过执行以下过程安装 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
安装花了很长时间,但成功了。