Hello, I've successfully used ming32 to build lxml (dynamically linked). I was unable to get the static linking to work, because I was unable to get the VC++ 2003 Toolkit compiler and trying static linking with gcc gives lots of errors. Step 1: Download and install Mingw from http://mingw.org. Step 2: Start a command window and set the path to include MingW eg. set path=%path%;C:\mingw\bin Step 3: Download the win32 libs from ftp://xmlsoft.org/libxml2/win32. You will need iconv-1.9.1.win32.zip libxml2-2.6.23.win32.zip libxslt-1.1.15.win32.zip zlib-1.2.3.win32.zip Step 4: Follow the instructions in doc/build.txt for extraction, but use the following setupStaticBuild function instead of the one mentioned: def setupStaticBuild(): "See doc/build.txt to make this work." cflags = [ "-I..\\libxml2-2.6.23.win32\\include", "-I..\\libxslt-1.1.15.win32\\include", "-I..\\zlib-1.2.3.win32\\include", "-I..\\iconv-1.9.1.win32\\include" ] xslt_libs = [ "..\\libxml2-2.6.23.win32\\bin\\libxml2.dll", "..\\libxslt-1.1.15.win32\\bin\\libxslt.dll", "..\\libxslt-1.1.15.win32\\bin\\libexslt.dll", "..\\iconv-1.9.1.win32\\bin\\iconv.dll", "..\\zlib-1.2.3.win32\\lib\\zlib.lib" ] result = (cflags, xslt_libs) return result Yes, We ARE linking to DLLs directly as the export libraries are incomplete. 5. Copy the 4 DLLs mentioned above to the src/lxml folder. Also, add this line towards the end of the file, just below the "packages = ['lxml']," line: package_data={'': ['*.dll']}, 6. To build the extension, use the following command: python setup.py build --c=mingw32 --static bdist_wininst You should have an installer which uses lxml dynamically linked to the above DLLs. The installer size is around 1344kB, which is almost the same size you get via static linking. (as a comparison, lxml-1.0.2.win32-static-py2.4.exe is around 1266kB). Hope this helps, Ashish