คำถามติดแท็ก distutils

5
ความแตกต่างระหว่างการแจกแจง distutils, setuptools และ distutils2?
สถานการณ์ ฉันพยายามพอร์ตไลบรารีโอเพนซอร์ซกับ Python 3 ( SymPyหากมีใครสงสัย) ดังนั้นฉันต้องทำงาน2to3โดยอัตโนมัติเมื่อสร้าง Python 3 ฉันต้องใช้distributeมัน ดังนั้นผมต้องพอร์ตระบบปัจจุบันซึ่ง (ตาม doctest) distutilsจะ ปัญหา แต่น่าเสียดายที่ผมไม่แน่ใจว่าสิ่งที่แตกต่างระหว่างโมดูลเหล่านี้distutils, ,distribute setuptoolsเอกสารนั้นเป็นแบบร่างที่ดีที่สุดเนื่องจากพวกเขาดูเหมือนจะแยกจากกันโดยมีจุดประสงค์เพื่อให้เข้ากันได้ในสถานการณ์ส่วนใหญ่ (แต่จริงๆแล้วไม่ใช่ทั้งหมด) ... เป็นต้นไปเรื่อย ๆ คำถาม มีคนอธิบายความแตกต่างได้ไหม ฉันควรใช้อะไรดี ทางออกที่ทันสมัยที่สุดคืออะไร (นอกเหนือจากนี้ฉันขอขอบคุณคู่มือบางอย่างเกี่ยวกับการย้ายไปที่Distributeแต่นั่นก็ไม่น่าเกินขอบเขตของคำถาม ... )

10
การรวมไฟล์ที่ไม่ใช่ไพ ธ อนด้วย setup.py
ฉันจะทำอย่างไร setup.pyรวมไฟล์ที่ไม่ได้เป็นส่วนหนึ่งของรหัสได้อย่างไร (โดยเฉพาะมันเป็นไฟล์ลิขสิทธิ์ แต่อาจเป็นอย่างอื่นก็ได้) ฉันต้องการที่จะควบคุมตำแหน่งของไฟล์ ในโฟลเดอร์ต้นฉบับต้นฉบับไฟล์อยู่ในรูทของแพ็คเกจ (เช่นในระดับเดียวกับระดับสูงสุด__init__.py) ฉันต้องการให้มันอยู่ตรงนั้นเมื่อติดตั้งแพ็คเกจโดยไม่คำนึงถึงระบบปฏิบัติการ ฉันจะทำอย่างไร
200 python  distutils 

8
DistutilsOptionError: ต้องระบุ home หรือ prefix / exec-prefix - ไม่ใช่ทั้งสองอย่าง
ฉันมักจะได้รับการติดตั้งแพ็กเกจหลามผ่าน pip สำหรับ Google App Engine ฉันต้องติดตั้งแพ็คเกจไปยังไดเรกทอรีเป้าหมายอื่น ฉันพยายามแล้ว: pip ติดตั้ง -I flask-restful --target ./lib แต่มันล้มเหลวด้วย: ต้องจัดหาทั้งที่บ้านหรือคำนำหน้า / exec-prefix - ไม่ใช่ทั้งสองอย่าง ฉันจะทำให้เรื่องนี้ทำงานได้อย่างไร

4
setuptools vs. distutils: ทำไม distutils ยังคงเป็นเรื่อง
งูหลามมีประวัติศาสตร์อันสับสนของเครื่องมือที่สามารถใช้ในการจัดแพคเกจและอธิบายโครงการ: เหล่านี้รวมถึงdistutilsในห้องสมุดมาตรฐานdistribute, distutils2และsetuptools(และอาจจะมากกว่า) ปรากฏว่าdistributeและdistutils2ถูกยกเลิกในความโปรดปรานsetuptoolsซึ่งออกจากสองมาตรฐานการแข่งขัน เพื่อความเข้าใจของฉันsetuptoolsมีตัวเลือกมากขึ้น (เช่นการประกาศการอ้างอิงการทดสอบและอื่น ๆ ) มากกว่าdistutilsแต่มันไม่รวมอยู่ในไลบรารี่มาตรฐานของไพ ธ อน (ยัง?) หลามบรรจุภัณฑ์คู่มือการใช้งาน [ 1 ] แนะนำขณะนี้: ใช้setuptoolsเพื่อกำหนดโครงการและสร้างการกระจายแหล่งที่มา และอธิบาย: แม้ว่าคุณสามารถใช้บริสุทธิ์distutilsสำหรับโครงการจำนวนมากก็ไม่สนับสนุนการกำหนดอ้างอิงในโครงการอื่น ๆ setuptoolsและจะหายไปสาธารณูปโภคอำนวยความสะดวกหลายอย่างสำหรับประชากรโดยอัตโนมัติเมตาดาต้าแพคเกจได้อย่างถูกต้องที่ให้ไว้โดย เมื่ออยู่นอกไลบรารีมาตรฐาน setuptools ยังมีฟีเจอร์ที่สอดคล้องกันมากขึ้นในเวอร์ชัน Python ที่แตกต่างกันและ (ต่างจากdistutils) setuptoolsจะได้รับการอัปเดตเพื่อสร้างรูปแบบมาตรฐาน“ Metadata 2.0” ที่กำลังจะเกิดขึ้นในทุกเวอร์ชั่นที่รองรับ แม้แต่โครงการที่เลือกใช้distutilsเมื่อ pip ติดตั้งโครงการดังกล่าวโดยตรงจากแหล่งที่มา (แทนที่จะติดตั้งจากไฟล์ล้อที่สร้างไว้ล่วงหน้า) มันจะสร้างโครงการของคุณโดยใช้setuptoolsแทน อย่างไรก็ตามการดูไฟล์setup.pyของโครงการต่างๆพบว่าสิ่งนี้ดูเหมือนจะไม่ได้มาตรฐานจริง แพ็คเกจจำนวนมากยังคงใช้งานอยู่distutilsและแพ็คเกจที่สนับสนุนsetuptoolsมักจะผสมsetuptoolsกับdistutilsตัวอย่างเช่นโดยการนำเข้าทางเลือก: try: from setuptools import setup except ImportError: from distutils.core import setup …

4
ฉันจะทำให้ setuptools ติดตั้งแพ็คเกจที่ไม่ได้อยู่ใน PyPI ได้อย่างไร
ฉันเพิ่งเริ่มทำงานกับ setuptools และ virtualenv แพ็คเกจของฉันต้องการ python-gearman ล่าสุดที่พร้อมใช้งานจาก GitHub เท่านั้น รุ่น python-gearman ที่อยู่ใน PyPI นั้นเป็นรุ่นเก่า แหล่งที่มาของ Github นั้นรองรับการใช้งาน setuptools เช่นมี setup.py เป็นต้นมีวิธีที่จะทำให้ setuptools ทำการดาวน์โหลดและติดตั้งเวอร์ชั่นใหม่แทนที่จะมองหาบน PyPI และติดตั้งเก่าหรือไม่? FYI, python-gearman ใหม่คือhttp://github.com/mtai/python-gearman

4
การคอมไพล์ด้วย cython และ mingw สร้าง gcc: error: ตัวเลือกบรรทัดคำสั่งที่ไม่รู้จัก '-mno-cygwin'
ฉันพยายามรวบรวมส่วนขยาย python กับ cython ใน win 7 64 บิตโดยใช้ mingw (64 บิต) ฉันกำลังทำงานกับ Python 2.6 (Active Python 2.6.6) และมีไฟล์ distutils.cfg ที่เพียงพอ (ตั้งค่า mingw เป็นคอมไพเลอร์) เมื่อดำเนินการ > C:\Python26\programas\Cython>python setup.py build_ext --inplace ฉันได้รับข้อผิดพลาดแจ้งว่า gcc ไม่มีตัวเลือก -mno-cygwin: > C:\Python26\programas\Cython>python setup.py build_ext --inplace running build_ext skipping 'hello2.c' Cython extension (up-to-date) building 'hello2' extension C:\mingw\bin\gcc.exe …

9
pypi UserWarning: ตัวเลือกการแจกจ่ายที่ไม่รู้จัก: 'install_requires'
มีใครพบคำเตือนนี้เมื่อpython setup.py installเรียกใช้แพ็คเกจ PyPI หรือไม่? install_requiresกำหนดสิ่งที่แพคเกจต้องการ แพ็คเกจ PyPI จำนวนมากมีตัวเลือกนี้ "ตัวเลือกการแจกจ่ายที่ไม่รู้จัก" ได้อย่างไร
113 python  distutils  pypi 

5
รวม --user กับ --prefix error ด้วยการติดตั้ง setup.py
ฉันกำลังพยายามติดตั้งแพ็คเกจ Python ซึ่งเป็นระบบที่ฉันเพิ่งเข้าถึงได้ ผมพยายามที่จะใช้ประโยชน์จากงูใหญ่ค่อนข้างใหม่ต่อผู้ใช้ไดเรกทอรีเว็บไซต์แพคเกจ--userและตัวเลือกใหม่ ( ขณะนี้ตัวเลือกยังไม่มีเอกสารอย่างไรก็ตามมีอยู่สำหรับ Python 2.6+ คุณสามารถดูวิธีใช้โดยการเรียกใช้python setup.py install --help) เมื่อได้ลองวิ่ง python setup.py install --user บนแพ็คเกจใด ๆ ที่ฉันดาวน์โหลดฉันมักจะได้รับข้อผิดพลาดต่อไปนี้: error: can't combine user with with prefix/exec_prefix/home or install_(plat)base ข้อผิดพลาดถูกมากงงเพราะในขณะที่คุณสามารถดูผมไม่ได้ให้--prefix, --exec-prefix, --install-baseหรือ--install-platbaseธงเลือกบรรทัดคำสั่ง ฉันเสียเวลาไปมากในการพยายามคิดว่าปัญหาคืออะไร ฉันเอกสารคำตอบของฉันด้านล่างในความหวังที่จะสำรองบางจิตวิญญาณที่ไม่ดีอื่น ๆ ไม่กี่ชั่วโมงของจามรีโกนหนวด

11
วิธีการติดตั้ง python distutils
ฉันเพิ่งมีที่ว่างบนเซิร์ฟเวอร์ VPS (ทำงานบน ubuntu 8.04) และฉันกำลังพยายามติดตั้ง django บนมัน เซิร์ฟเวอร์ได้ติดตั้ง python 2.5 ไว้แล้ว แต่ฉันเดาว่าเป็นการติดตั้งที่ไม่ได้มาตรฐาน เมื่อฉันเรียกใช้สคริปต์การติดตั้งสำหรับ django ฉันจะได้รับ amitoj@ninja:~/Django-1.2.1$ python setup.py install Traceback (most recent call last): File "setup.py", line 1, in <module> from distutils.core import setup ImportError: No module named distutils.core ฉันนิ่งงัน บทความทั้งหมดบนอินเทอร์เน็ตบอกวิธีการติดตั้งโมดูลโดยใช้ distutils แต่ฉันจะเข้าใจผิดได้อย่างไร? ใครสามารถชี้ฉันไปที่ที่เก็บถาวรสำหรับความห่างไกล ฉันดูใน /usr/lib/local/python2.5, /usr/lib/python2.5 ฯลฯ และตามที่คาดไว้ไม่มีสิ่งที่ไม่สามารถพบได้
96 python  distutils 

6
MANIFEST.in ละเว้นใน“ การติดตั้ง python setup.py” - ไม่มีการติดตั้งไฟล์ข้อมูล?
นี่คือสคริปต์ setup.py ที่ถูกถอดออกของฉันโดยไม่ได้ลบรหัส #!/usr/bin/env python from distutils.core import setup from whyteboard.misc import meta setup( name = 'Whyteboard', version = meta.version, packages = ['whyteboard', 'whyteboard.gui', 'whyteboard.lib', 'whyteboard.lib.pubsub', 'whyteboard.lib.pubsub.core', 'whyteboard.lib.pubsub.utils', 'whyteboard.misc'], py_modules = ['whyteboard'], scripts = ['whyteboard.py'], ) MANIFEST.in: include *.txt include whyteboard-help/*.* recursive-include locale *.mo recursive-include images *.png เมื่อฉันเรียกใช้ "python setup.py …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.