Jason Sundram
Jason Sundram

Reputation: 12524

Python copy a DLL to site-packages on Windows

I am writing a python extension module that needs to link with a third-party DLL. How can I copy this DLL to the site-packages directory using distutils (i.e. in my setup.py file)?

Upvotes: 8

Views: 6661

Answers (1)

Luper Rouch
Luper Rouch

Reputation: 9502

Put your DLL in the package_data argument of your setup() (see the Installing Package Data section of the distutils documentation for details).

If you need to put the DLL outside of the package directory , you can use the data_files option. For example to put it in the site-packages directory:

import distutils.sysconfig

setup(
    # [...]
    data_files = [(distutils.sysconfig.get_python_lib(), ["/path/to/the/DLL"])],
)

Upvotes: 8

Related Questions