py2exe odbc:cannot import dbi module
Thomas Heller
theller at python.net
Tue Mar 2 14:09:00 EST 2004
mederis at hotmail.com (Marc Ederis) writes:
> Hello,
>
> I'm trying to create an executable with py2exe, and it uses the odbc
> module. The script runs fine until I use py2exe on it and run the
> .exe. Then I get:
>
> --
> Traceback (most recent call last):
> File "dbmod.py", line 2, in ?
> File "odbc.pyo", line 9, in ?
> File "odbc.pyo", line 7, in __load
> odbc: Cannot import dbi module
> --
>
> dbi.dll is in the dist folder, and so is odbc.pyd.
>
> Does anyone know how to solve this problem?
It seems you have to first explicitely import the dbi module before the
odbc module can be imported.
"""
import dbi, odbc
"""
py2exe doesn't know that dbi.dll is a python extension - it is only
found as binary dependency. And you should not (must not?) distribute
odbc32.dll, which is also copied to the dist folder.
In py2exe 0.5, you *should* be able to specify
dll_exludes = ["odbc32.dll"]
but this doesn't seem to work.
Thomas
More information about the Python-list
mailing list