28 มิถุนายน 2560

Published มิถุนายน 28, 2560 by with 0 comment

ติดตั้งโมดูลที่มีการใช้ C/C++ ใน Python 3.5 , 3.6 ด้วย Visual Studio 2017

หากผู้อ่านใช้ Python 3.5 , 3.6 บน Windows ควรตั้งค่า Python กับ Visual Studio 2017 เป็นสิ่งที่ผู้ใช้งาน Python บน Windows ควรทำ


เพราะเมื่อทำการติดตั้งโมดูลที่มีการใช้ C/C++ ใน Python 3.5 , 3.6 อาจพบปัญหาดังนี้
"   building 'twisted.test.raiser' extension
    error: Microsoft Visual C++ 14.0 is required. Get it with "Microsoft Visual C++ Build Tools": http://landinghub.visualstudio.com/visual-cpp-build-tools
    ----------------------------------------
Command ""c:\program files\python36\python.exe" -u -c "import setuptools, tokenize;__file__='C:\\Users\\ADMINI~1\\AppData\\Local\\Temp\\pip-build-68oh6ofn\\Twisted\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record
 C:\Users\ADMINI~1\AppData\Local\Temp\pip-paytsys9-record\install-record.txt --single-version-externally-managed --compile" failed with error code 1 in C:\Users
\ADMINI~1\AppData\Local\Temp\pip-build-68oh6ofn\Twisted\"

เป็นเพราะไม่ได้ตั้งค่า C คอมไพล์กับ Python ไว้ ใน Windows แนะนำว่าควรใช้งาน Visual Studio

หากต้องการติดตั้งโมดูลที่มีการใช้ C/C++ ใน Python 3.5 , 3.6 ต้องทำการติดตั้ง Visual Studio 2017 ก่อน โดยโหลดได้จาก https://www.visualstudio.com/downloads/

เสร็จแล้ว ให้ทำการอัพเดต setuptools เป็นเวชั่นล่าสุดก่อนด้วยคำสั่ง python -m pip install -U pip setuptools

เสร็จแล้ว เปิด Start แล้วเลือกหน้าต่างตามเวชั่น Python ที่ใช้
ติดตั้งโมดูลที่มีการใช้ C/C++ ใน Python 3.5 , 3.6 ด้วย Visual Studio 2017

  • หากใช้ Python 3.5 , 3.6 X86 เลือก X86 Native Tools Command Prompt for VS 2017
  • หากใช้ Python 3.5 , 3.6 X64 เลือก X64 Native Tools Command Prompt for VS 2017
ลองสั่ง pip install twisted ในหน้า Command Prompt for VS 2017 เพื่อทดสอบ

เพียงเท่านี้คุณก็สามารถติดตั้งโมดูลที่มีการใช้ C/C++ ใน Python 3.5 , 3.6 ด้วย Visual Studio 2017 ได้แล้ว

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)