I am trying to install the mysqlclient connector for Django on a Windows Server 2012 R2 machine using python 3.5.1 and pip 8.1.2, and after having hell with the dependencies and source and library paths, the linker now complains about a version mismatch, to be specific: the pip package is looking for a mysqlclient.lib with version 19, however the mysqlclient.lib file that comes with the latest official installer (Mysql 5.7.13) has version 18 (according to the linker message). I had the same problem with the XAMPP stack on a Mac, where the pip package requested a lib with version 20 whereas the bundled Mysql server had a lib with version 18, the solution was to download the latest Mysql installer from the Oracle site. This leaves me with several questions:
- Why does the official Mysql Windows installer come with an older version of the lib? The Mac and Linux bundles both come with version 20 whereas in Windows it is 18.
- Why does the pip package on Windows request a different version from the one in Mac and Linux? (in Windows it requests version 19 vs 20 on Mac/Linux).
- How can I workaround this?
This is the linker error message:
libcpmt.lib(xthrow.obj) : error LNK2038: mismatch detected for '_MSC_VER': v
alue '1900' doesn't match value '1800' in mysqlclient.lib(net_serv.obj)
libcpmt.lib(syserror.obj) : error LNK2038: mismatch detected for '_MSC_VER':
value '1900' doesn't match value '1800' in mysqlclient.lib(net_serv.obj)
Edit:
I'm using python version 3.5.1 and as it seems, there are no wheels available for python 3 yet (https://pypi.python.org/pypi/mysqlclient)
Aucun commentaire:
Enregistrer un commentaire