Hello!
I need to install a current release of lxml into a virtualenv on a VPS.
This VPS however has some memory quota that doesn't allow me to build it
package there. I tried therefore to build a distribution on my laptop
(the same architecture, but other linux distro). I used:
$ CFLAGS='-fPIC' python setup.py bdist_egg --static_deps
After installing the egg (with easy_install) on the server I get this:
>>> import lxml.etree
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File
"/home/pythonista/www/virtualenv/pc-qa/lib/python3.2/site-packages/lxml-3.1.2-py3.2-linux-x86_64.egg/lxml/etree.py",
line 7, in <module>
__bootstrap__()
File
"/home/pythonista/www/virtualenv/pc-qa/lib/python3.2/site-packages/lxml-3.1.2-py3.2-linux-x86_64.egg/lxml/etree.py",
line 6, in __bootstrap__
imp.load_dynamic(__name__,__file__)
ImportError:
/home/pythonista/www/virtualenv/pc-qa/lib/python3.2/site-packages/lxml-3.1.2-py3.2-linux-x86_64.egg/lxml/etree.cpython-32mu.so:
cannot open shared object file: No such file or directory
So apparently my distribution is still dependent on some files from the
base machine. If I try to ldd etree.cpython-32mu.so I get a message that
it is not a dynamic package, so I don't know what file does it look for.
So what is the correct way to create a static, binary distribution for
lxml, that I could install on a different machine?
Greetings
Szymon Pyżalski