https://bugs.launchpad.net/lxml/+bug/1614603 fixed an issue on Linux, but broke OS X. `pip install lxml==3.6.3` fails with this error: ## Building wheels for collected packages: lxml Running setup.py bdist_wheel for lxml Complete output from command /Users/danchenshao/Uber/.pyenvs/foober/bin/python2.7 -c "import setuptools;__file__='/private/var/folders/6z/q0_8zdvj4kj9tr1l31q1mx580000gn/T/pip-build-FmzRyj/lxml/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /var/folders/6z/q0_8zdvj4kj9tr1l31q1mx580000gn/T/tmpAbN1KIpip-wheel-: Building lxml version 3.6.3. Building without Cython. Using build configuration of libxslt 1.1.28 running bdist_wheel running build running build_py creating build creating build/lib.macosx-10.10-x86_64-2.7 creating build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/__init__.py -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/_elementpath.py -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/builder.py -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/cssselect.py -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/doctestcompare.py -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/ElementInclude.py -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/pyclasslookup.py -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/sax.py -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/usedoctest.py -> build/lib.macosx-10.10-x86_64-2.7/lxml creating build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/__init__.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes creating build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/__init__.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/_diffcommand.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/_html5builder.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/_setmixin.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/builder.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/clean.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/defs.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/diff.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/ElementSoup.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/formfill.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/html5parser.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/soupparser.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html copying src/lxml/html/usedoctest.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/html creating build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron copying src/lxml/isoschematron/__init__.py -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron copying src/lxml/lxml.etree.h -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/lxml.etree_api.h -> build/lib.macosx-10.10-x86_64-2.7/lxml copying src/lxml/includes/c14n.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/config.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/dtdvalid.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/etreepublic.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/htmlparser.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/relaxng.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/schematron.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/tree.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/uri.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/xinclude.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/xmlerror.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/xmlparser.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/xmlschema.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/xpath.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/xslt.pxd -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/etree_defs.h -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes copying src/lxml/includes/lxml-version.h -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes creating build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources creating build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/rng copying src/lxml/isoschematron/resources/rng/iso-schematron.rng -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/rng creating build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl copying src/lxml/isoschematron/resources/xsl/RNG2Schtrn.xsl -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl copying src/lxml/isoschematron/resources/xsl/XSD2Schtrn.xsl -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl creating build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1 copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_abstract_expand.xsl -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1 copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_dsdl_include.xsl -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1 copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_message.xsl -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1 copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_schematron_skeleton_for_xslt1.xsl -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1 copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/iso_svrl_for_xslt1.xsl -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1 copying src/lxml/isoschematron/resources/xsl/iso-schematron-xslt1/readme.txt -> build/lib.macosx-10.10-x86_64-2.7/lxml/isoschematron/resources/xsl/iso-schematron-xslt1 running build_ext building 'lxml.etree' extension creating build/temp.macosx-10.10-x86_64-2.7 creating build/temp.macosx-10.10-x86_64-2.7/src creating build/temp.macosx-10.10-x86_64-2.7/src/lxml clang -fno-strict-aliasing -fno-common -dynamic -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/usr/include/libxml2 -Isrc/lxml/includes -I/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/lxml/lxml.etree.c -o build/temp.macosx-10.10-x86_64-2.7/src/lxml/lxml.etree.o -w -flat_namespace clang -bundle -undefined dynamic_lookup build/temp.macosx-10.10-x86_64-2.7/src/lxml/lxml.etree.o -lxslt -lexslt -lrt -lxml2 -lz -lm -o build/lib.macosx-10.10-x86_64-2.7/lxml/etree.so ld: library not found for -lrt clang: error: linker command failed with exit code 1 (use -v to see invocation) error: command 'clang' failed with exit status 1 ---------------------------------------- Failed building wheel for lxml Failed to build lxml Installing collected packages: lxml Found existing installation: lxml 3.6.1 Uninstalling lxml-3.6.1: Successfully uninstalled lxml-3.6.1 Running setup.py install for lxml Complete output from command /Users/danchenshao/Uber/.pyenvs/foober/bin/python2.7 -c "import setuptools, tokenize;__file__='/private/var/folders/6z/q0_8zdvj4kj9tr1l31q1mx580000gn/T/pip-build-FmzRyj/lxml/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/6z/q0_8zdvj4kj9tr1l31q1mx580000gn/T/pip-MneQsb-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/danchenshao/Uber/.pyenvs/foober/bin/../include/site/python2.7/lxml: Building lxml version 3.6.3. Building without Cython. Using build configuration of libxslt 1.1.28 running install running build running build_py copying src/lxml/includes/lxml-version.h -> build/lib.macosx-10.10-x86_64-2.7/lxml/includes running build_ext building 'lxml.etree' extension clang -fno-strict-aliasing -fno-common -dynamic -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -I/usr/include/libxml2 -Isrc/lxml/includes -I/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c src/lxml/lxml.etree.c -o build/temp.macosx-10.10-x86_64-2.7/src/lxml/lxml.etree.o -w -flat_namespace clang -bundle -undefined dynamic_lookup build/temp.macosx-10.10-x86_64-2.7/src/lxml/lxml.etree.o -lxslt -lexslt -lrt -lxml2 -lz -lm -o build/lib.macosx-10.10-x86_64-2.7/lxml/etree.so ld: library not found for -lrt clang: error: linker command failed with exit code 1 (use -v to see invocation) error: command 'clang' failed with exit status 1 ---------------------------------------- Rolling back uninstall of lxml Command "/Users/danchenshao/Uber/.pyenvs/foober/bin/python2.7 -c "import setuptools, tokenize;__file__='/private/var/folders/6z/q0_8zdvj4kj9tr1l31q1mx580000gn/T/pip-build-FmzRyj/lxml/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/6z/q0_8zdvj4kj9tr1l31q1mx580000gn/T/pip-MneQsb-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/danchenshao/Uber/.pyenvs/foober/bin/../include/site/python2.7/lxml" failed with error code 1 in /private/var/folders/6z/q0_8zdvj4kj9tr1l31q1mx580000gn/T/pip-build-FmzRyj/lxml ## From quick googling, it looks like OSX doens't need the "-lrt" flag at all. I found several PRs on other projects that simply removed that flag when compiling on OSX and that fixed it for them