2015-09-08 16 views
5

में mysqlclient स्थापित करने में असमर्थ मैं MySQL और पायथन 3 के साथ django चलाने के लिए चाहता हूं। मैंने virtualenv --no-site-packages -p python3 ./ के साथ वर्चुअल वातावरण प्रारंभ किया। तब मैं पिप का उपयोग कर Django और पहिया स्थापित है, तो पिप फ्रीज मैं pip install mysqlclient साथ mysqlclient स्थापित करने की कोशिश कीpython3 virtualenv

django==1.8.3 
wheel==0.24.0 

देता है तो, लेकिन यह

Downloading/unpacking mysqlclient 
Downloading mysqlclient-1.3.6.tar.gz (78kB): 78kB downloaded 
Running setup.py (path:/tmp/pip-build-jpdlrnc8/mysqlclient/setup.py) egg_info for package mysqlclient 

Installing collected packages: mysqlclient 
Running setup.py install for mysqlclient 
building '_mysql' extension 
i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -Dversion_info=(1,3,6,'final',1) -D__version__=1.3.6 -I/usr/include/mysql -I/usr/include/python3.4m -I/home/ondra/zelvovani/include/python3.4m -c _mysql.c -o build/temp.linux-i686-3.4/_mysql.o -DBIG_JOINS=1 -fno-strict-aliasing -DTAOCRYPT_DISABLE_X86ASM -g -DNDEBUG 
error: command 'i586-linux-gnu-gcc' failed with exit status 1 
Complete output from command /home/ondra/zelvovani/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip-build-jpdlrnc8/mysqlclient/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-fa_6nkh3-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/ondra/zelvovani/include/site/python3.4: 
running install 

running build 

running build_py 

creating build 

creating build/lib.linux-i686-3.4 

copying _mysql_exceptions.py -> build/lib.linux-i686-3.4 

creating build/lib.linux-i686-3.4/MySQLdb 

copying MySQLdb/__init__.py -> build/lib.linux-i686-3.4/MySQLdb 

copying MySQLdb/compat.py -> build/lib.linux-i686-3.4/MySQLdb 

copying MySQLdb/converters.py -> build/lib.linux-i686-3.4/MySQLdb 

copying MySQLdb/connections.py -> build/lib.linux-i686-3.4/MySQLdb 

copying MySQLdb/cursors.py -> build/lib.linux-i686-3.4/MySQLdb 

copying MySQLdb/release.py -> build/lib.linux-i686-3.4/MySQLdb 

copying MySQLdb/times.py -> build/lib.linux-i686-3.4/MySQLdb 

creating build/lib.linux-i686-3.4/MySQLdb/constants 

copying MySQLdb/constants/__init__.py -> build/lib.linux-i686-3.4/MySQLdb/constants 

copying MySQLdb/constants/CR.py -> build/lib.linux-i686-3.4/MySQLdb/constants 

copying MySQLdb/constants/FIELD_TYPE.py -> build/lib.linux-i686-3.4/MySQLdb/constants 

copying MySQLdb/constants/ER.py -> build/lib.linux-i686-3.4/MySQLdb/constants 

copying MySQLdb/constants/FLAG.py -> build/lib.linux-i686-3.4/MySQLdb/constants 

copying MySQLdb/constants/REFRESH.py -> build/lib.linux-i686-3.4/MySQLdb/constants 

copying MySQLdb/constants/CLIENT.py -> build/lib.linux-i686-3.4/MySQLdb/constants 

running build_ext 

building '_mysql' extension 

creating build/temp.linux-i686-3.4 

i586-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -g -fstack-protector-strong -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fPIC -Dversion_info=(1,3,6,'final',1) -D__version__=1.3.6 -I/usr/include/mysql -I/usr/include/python3.4m -I/home/ondra/zelvovani/include/python3.4m -c _mysql.c -o build/temp.linux-i686-3.4/_mysql.o -DBIG_JOINS=1 -fno-strict-aliasing -DTAOCRYPT_DISABLE_X86ASM -g -DNDEBUG 

error: command 'i586-linux-gnu-gcc' failed with exit status 1 

---------------------------------------- 
Cleaning up... 
Command /home/ondra/zelvovani/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip-build-jpdlrnc8/mysqlclient/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-fa_6nkh3-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/ondra/zelvovani/include/site/python3.4 failed with error code 1 in /tmp/pip-build-jpdlrnc8/mysqlclient 
Storing debug log for failure in /home/ondra/.pip/pip.log 

मैं libmysqlclient-dev, python3-dev, zlib1g-dev (संकुल स्थापित किया है के साथ समाप्त हुआ है कि स्टैक ओवरफ्लो में अन्य प्रश्नों में सुझाव दिया गया था)।

क्या आपके पास कोई विचार है, मैं क्या गलत कर रहा हूं?

उत्तर

8

pymysql का उपयोग करें और इसे अपनी समस्या का समाधान करना चाहिए। pip3 install pymysql का उपयोग करें। फ़ाइल निर्देशिका में, स्थापित करने के बाद project/project/__init__.py बारे में इस

import pymysql 
pymysql.install_as_MySQLdb() 

नोट: - परियोजना अपने Django परियोजना का नाम है।

+0

धन्यवाद, यह काम करता है। लेकिन मैं जानना चाहता हूं कि इस तरह के बिना इसे कैसे हल किया जाए - मेरे दूसरे पर मैं mysqlclient स्थापित करने में सक्षम था और दोनों कंप्यूटरों में एक ही डेबियन था और मुझे कोई भी कनेक्टेड पैकेज नहीं मिला जिसमें वे अलग होंगे –

3

आप python3-dev और libmysqlclient-devthe documentation के रूप में स्थापित करने का प्रयास कर सकते हैं। मुझे तब तक एक ही समस्या थी जब तक मैंने देखा कि मुझे उन पैकेजों की आवश्यकता है।

1

यदि आप पाइथन 3.5 या 3.6 का उपयोग कर रहे हैं तो आपको this issue में वर्णित समस्या होनी चाहिए।

इस पुस्तकालय के लिए योगदानकर्ताओं में से एक का हवाला देते हुए: विंडोज पर

बिल्डिंग MySQL-अजगर कठिन है। आपको पीपी इंस्टॉल के बजाय स्रोत से निर्माण करना चाहिए क्योंकि आपको setup.cfg फ़ाइल को संपादित करने की आवश्यकता है।

शुक्र है वहाँ क्रिस्टोफ Gohlke (प्रतिदीप्ति गतिशीलता के लिए प्रयोगशाला, कैलिफोर्निया इर्विन विश्वविद्यालय) द्वारा अजगर एक्सटेंशन संकुल के लिए एक अनधिकृत विंडोज बाइनरी है और वहाँ आप इस लाइब्रेरी के लिए पहियों (.whl) डाउनलोड कर सकते हैं:

आपके सिस्टम और पायथन संस्करण के अनुसार डाउनलोड करें। पूर्व संकलित अजगर संकुल की क्रिस्टोफ़ Gohlke के पुस्तकालय से अपने ओएस के अनुसार

pip install mysqlclient-....whl 
0

mysqlclient के लिए पूर्व संकलित WHL फ़ाइल डाउनलोड करें:

तो फिर तुम बस (डाउनलोड की गई फ़ाइल की निर्देशिका में) करने की जरूरत है नीचे के स्थान से खिड़कियों के लिए।

http://www.lfd.uci.edu/~gohlke/pythonlibs/#vlfd

अब निर्देशिका है जहाँ आप उस फ़ाइल और वहाँ खुला कमांड प्रॉम्प्ट डाउनलोड किया गया।

अब नीचे दिए गए आदेश

पाइप स्थापित xxx।whl

सर्वश्रेष्ठ भाग्य !!