मैं अजगर में एक पहिया क्यों नहीं बना सकता हूं?


190

यहां वे कमांड हैं जो मैं चला रहा हूं:

$ python setup.py bdist_wheel
usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
   or: setup.py --help [cmd1 cmd2 ...]
   or: setup.py --help-commands
   or: setup.py cmd --help

error: invalid command 'bdist_wheel'

$ pip --version
pip 1.5.6 from /usr/local/lib/python3.4/site-packages (python 3.4)

$ python -c "import setuptools; print(setuptools.__version__)"
2.1

$ python --version
Python 3.4.1

$ which python
/usr/local/bin/python

इसके अलावा, मैं एक घर चल रहा है अजगर के साथ अजगर

यहाँ मेरी setup.py स्क्रिप्ट है: https://gist.github.com/cloudformdesign/4791c46fe7cd52eb61cd

मैं बिल्कुल पागल हो रहा हूं - मैं यह पता नहीं लगा सकता कि यह काम क्यों नहीं करेगा।


2
और आपने wheelपैकेज स्थापित किया है क्योंकि थॉमस का जवाब सलाह देता है?
मार्टिन पीटर्स

1
मेरी भी यही समस्या है। लेकिन ऐसा लगता है कि मैं सराहना करने से पहले sudo का उपयोग नहीं किया। प्रशासक की अनुमति के साथ प्रशंसा का उपयोग करने के बाद। इसने काम कर दिया।
शिकारी

जवाबों:


301

पहले wheelपैकेज स्थापित करें :

pip install wheel

इस पर दस्तावेज़ स्पष्ट रूप से स्पष्ट नहीं है, लेकिन "व्हील प्रोजेक्ट सेटपूल के लिए bdist_wheel कमांड प्रदान करता है" वास्तव में "व्हील पैकेज ..." का अर्थ है ।


1
इतना है कि फ़ाइल बाहर थूक: nioblocks-1.01-cp34-cp34m-macosx_10_9_x86_64.whl - यह किसी भी ओएस के साथ काम करेगा, या वहाँ कुछ और है मुझे इसे काम करने के लिए करना है? ("पैकेज" अभी स्थापित करने के लिए पाइप के लिए निर्भरता का एक गुच्छा है)
विटिरल

1
@GarrettLinux मुझे नहीं पता, मुझे क्षमा करें, लेकिन मैं आपको इसके लिए एक अलग प्रश्न पूछने के लिए प्रोत्साहित करूंगा; )
थॉमस ओरोज़्को

1
मैंने उस समस्या को भी ठीक कर दिया - किसी भी फाइल को setup.py फ़ाइल में जोड़कर उसे एक सामान्य पहिया दिया। उदाहरण के लिए मेरे प्रश्न में अद्यतन कोड देखें।
विटिरल

आप ओपी की त्रुटि को व्हील इंस्टॉल के साथ भी प्राप्त कर सकते हैं, यदि सेटअप थ्रू किसी तरह से सेटपूल के बजाय डिस्टिल का उपयोग करता है (जैसा कि मेरे लिए मामला था), जियोग्राफिका द्वारा जवाब देखें।
ओलिवर

4
मेरे लिए समस्या पाइप का पुराना संस्करण था। द्वारा निर्धारितpip install --upgrade pip
Ryu_hayabusa

167

मैं भी त्रुटि संदेश में भाग गया invalid command 'bdist_wheel'

यह पैकेज सेटअप का उपयोग करता है, जिसमें सेटपुट के बजाय डिस्टुटिल्स का उपयोग किया जाता है। निम्नानुसार इसे बदलना मुझे पहिया बनाने में सक्षम बनाता है।

#from distutils.core import setup
from setuptools import setup

1
हाँ, मैं एक समय में भी उस समस्या थी! बहुत महत्वपूर्ण है, और त्रुटि संदेश खराब है।
विटिरल

@geographika हाँ यह आदेश docs.python.org/2/distutils/setupscript.html पर प्रलेखन भी है जो आपके द्वारा देखे जाने वाले मुद्दों को दोहराएगा क्योंकि यह डिसटिल का उपयोग करता है
जेम्सड

3
मैं जिस पैकेज के साथ काम कर रहा था, उसके लिए कम से कम बदलने के from distutils.core import Extension, Commandलिए भी आवश्यक हो सकता है from setuptools import Extension, Command
eseglem

मुझे pycrypto के लिए यह त्रुटि मिली और यह सेटअप आयात भी नहीं कर रहा था। हालाँकि, मैंने from setuptools import setupशुरुआत में जोड़ा और यह मुद्दा तय किया।
११:

38

अपने सेटपूल को भी अपडेट करें।

pip install setuptools --upgrade

यदि वह भी विफल रहता है, तो आप अतिरिक्त के साथ प्रयास कर सकते हैं --force ध्वज के ।


1
मेरे सेटपूल को हटा दिया गया था, या कुछ गलत था। इसलिए मुझे यह करना था:
अपग्रेड

12

मैं भी अचानक से इस भाग गया, के बाद यह पहले काम किया था, और यह था क्योंकि मैं एक virtualenv के अंदर था, और wheelvirtualenv में स्थापित नहीं किया गया था।


8

अपना pipपहला अपडेट करें :

pip install --upgrade pip

पायथन 3 के लिए:

pip3 install --upgrade pip

यह अब सबसे उपयोगी उत्तर है। पाइप इंस्टॉल के नए संस्करण bdist_wheel का उपयोग नहीं करते हैं, इसलिए बस मेरे लिए काम करने वाले पाइप को अपग्रेड करने के लिए, बिना सेट किएपूल या व्हील को अपडेट किए बिना
theferrit32

4

यह भी हो सकता है कि आपके पास केवल पायथन 3 प्रणाली हो। इसलिए आपने pip3 इंस्टॉल के माध्यम से आवश्यक पैकेज स्थापित किए हैं, जैसे pip3 install व्हील

आपको विशेष रूप से python3 का उपयोग करके अपना सामान बनाने की आवश्यकता होगी।

python3 setup.py sdist
python3 setup.py bdist_wheel

चीयर्स।


4

दूसरे उत्तर में फेंकना: अपनी जाँच करने का प्रयास करें PYTHONPATH

सबसे पहले, wheelफिर से स्थापित करने का प्रयास करें:

pip install wheel

यह आपको बताना चाहिए कि पहिया कहाँ स्थापित है, उदाहरण के लिए:

Requirement already satisfied: wheel in /usr/local/lib/python3.5/dist-packages

फिर पहिया के स्थान को अपने में जोड़ें PYTHONPATH:

export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python3.5/dist-packages/wheel

अब एक पहिया का निर्माण ठीक काम करना चाहिए।

python setup.py bdist_wheel

2

मैंने बिना किसी भाग्य के यहां कहा गया सब कुछ आज़माया, लेकिन एक समाधान पाया। इस आदेश को चलाने के बाद (और विफल):bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg

अस्थायी निर्देशिका पर जाएं जो उपकरण बनाया गया है (अंतिम कमांड के आउटपुट में दिया गया है), फिर निष्पादित करें python setup.py bdist_wheel.whlफाइल में है distफ़ोल्डर।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.