diff --git a/buildout/software-profiles/lxml-python.cfg b/buildout/software-profiles/lxml-python.cfg
index 7becf2f0c6a988683731c3dee3016ea5e282c657..c1a02996449a6946bc353474918bde94130e01b1 100644
--- a/buildout/software-profiles/lxml-python.cfg
+++ b/buildout/software-profiles/lxml-python.cfg
@@ -2,6 +2,7 @@
 extends =
   ../software-profiles/libxml2.cfg
   ../software-profiles/libxslt.cfg
+  ../software-profiles/zlib.cfg
 
 parts =
   lxml-python
@@ -15,4 +16,5 @@ egg = lxml
 rpath =
   ${libxml2:location}/lib/
   ${libxslt:location}/lib/
+  ${zlib:location}/lib/
 environment = lxml-python-env
diff --git a/buildout/tests/assertSoftware.py b/buildout/tests/assertSoftware.py
index f0dc59295d69d0156342ccf913a3586f9ac969ee..282d55c9ee9dbe2e189f99487a0be9189cafd87a 100644
--- a/buildout/tests/assertSoftware.py
+++ b/buildout/tests/assertSoftware.py
@@ -106,6 +106,13 @@ def readElfAsDict(f):
     runpath_list=sorted(runpath_list)
   )
 
+def getPythonVersion():
+  return '%s.%s' % util.sys.version_info[0:2]
+
+def getDevelopEggName(name, version):
+  return '%s-%s-py%s-%s.egg' % (name, version, getPythonVersion(),
+                                util.get_platform())
+
 def readLddInfoList(f):
   popen = subprocess.Popen(['ldd', f], stdout=subprocess.PIPE,
       stderr=subprocess.STDOUT)
@@ -1448,10 +1455,9 @@ class AssertBzip2(AssertSoftwareMixin):
 
 class AssertPysvn(AssertSoftwareMixin):
   def test_ld_pysvn(self):
-    python_version_major, python_version_minor = util.sys.version_info[0:2]
-    self.assertLibraryList('develop-eggs/pysvn-1.7.4-py%s.%s-%s.egg/pysvn/_pysvn_%s_%s.so' % (
-      python_version_major, python_version_minor, util.get_platform(),
-      python_version_major, python_version_minor), [
+    self.assertLibraryList('develop-eggs/%s/pysvn/_pysvn_%s.so' % (
+      getDevelopEggName('pysvn', '1.7.4'),
+      getPythonVersion().replace('.', '_')), [
       'libc',
       'libcom_err',
       'libgcc_s',
@@ -1465,6 +1471,41 @@ class AssertPysvn(AssertSoftwareMixin):
       'subversion'
       ])
 
+class AssertLxml(AssertSoftwareMixin):
+  def test_ld_etree_so(self):
+    egg_name = getDevelopEggName('lxml', '2.2.8')
+    python_version_major, python_version_minor = util.sys.version_info[0:2]
+    self.assertLibraryList('develop-eggs/%s/lxml/etree.so' % (egg_name), [
+      'libc',
+      'libexslt',
+      'libm',
+      'libpthread',
+      'libxml2',
+      'libxslt',
+      'libz',
+      ], [
+      'libxml2',
+      'libxslt',
+      'zlib',
+      ])
+
+  def test_ld_objectify_so(self):
+    egg_name = getDevelopEggName('lxml', '2.2.8')
+    python_version_major, python_version_minor = util.sys.version_info[0:2]
+    self.assertLibraryList('develop-eggs/%s/lxml/objectify.so' % (egg_name), [
+      'libc',
+      'libexslt',
+      'libm',
+      'libpthread',
+      'libxml2',
+      'libxslt',
+      'libz',
+      ], [
+      'libxml2',
+      'libxslt',
+      'zlib',
+      ])
+
 class AssertElfLinkedInternally(AssertSoftwareMixin):
   def test(self):
     result_dict = {}