पाइप के साथ पीआईएल स्थापित करना


349

मैं आदेश का उपयोग करके पीआईएल (पायथन इमेजिंग लाइब्रेरी) स्थापित करने की कोशिश कर रहा हूं:

sudo pip install pil

लेकिन मुझे निम्नलिखित संदेश मिलता है:

Downloading/unpacking PIL
  You are installing a potentially insecure and unverifiable file. Future versions of pip will default to disallowing insecure files.
  Downloading PIL-1.1.7.tar.gz (506kB): 506kB downloaded
  Running setup.py egg_info for package PIL
    WARNING: '' not a valid package name; please use only.-separated package names in setup.py

Installing collected packages: PIL
  Running setup.py install for PIL
    WARNING: '' not a valid package name; please use only.-separated package names in setup.py
    --- using frameworks at /System/Library/Frameworks
    building '_imaging' extension
    clang -fno-strict-aliasing -fno-common -dynamic -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-madd -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch x86_64 -pipe -IlibImaging -I/System/Library/Frameworks/Python.framework/Versions/2.7/include -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _imaging.c -o build/temp.macosx-10.8-intel-2.7/_imaging.o
    unable to execute clang: No such file or directory
    error: command 'clang' failed with exit status 1
    Complete output from command /usr/bin/python -c "import setuptools;__file__='/private/tmp/pip_build_root/PIL/setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-AYrxVD-record/install-record.txt --single-version-externally-managed:
    WARNING: '' not a valid package name; please use only.-separated package names in setup.py

running install

running build

.
.
.
.

copying PIL/XVThumbImagePlugin.py -> build/lib.macosx-10.8-intel-2.7

running build_ext

--- using frameworks at /System/Library/Frameworks

building '_imaging' extension

creating build/temp.macosx-10.8-intel-2.7

creating build/temp.macosx-10.8-intel-2.7/libImaging

clang -fno-strict-aliasing -fno-common -dynamic -g -Os -pipe -fno-common -fno-strict-aliasing -fwrapv -mno-fused-madd -DENABLE_DTRACE -DMACOSX -DNDEBUG -Wall -Wstrict-prototypes -Wshorten-64-to-32 -DNDEBUG -g -Os -Wall -Wstrict-prototypes -DENABLE_DTRACE -arch i386 -arch x86_64 -pipe -IlibImaging -I/System/Library/Frameworks/Python.framework/Versions/2.7/include -I/System/Library/Frameworks/Python.framework/Versions/2.7/include/python2.7 -c _imaging.c -o build/temp.macosx-10.8-intel-2.7/_imaging.o

unable to execute clang: No such file or directory

error: command 'clang' failed with exit status 1

----------------------------------------
Cleaning up

क्या आप कृपया मुझे पीआईएल स्थापित करने में मदद कर सकते हैं ??


क्या आपने Xcode इंस्टॉल किया है और फिर Xcode की कमांड लाइन टूल इंस्टॉल किया है? ऐसा लगता है कि आपके पास क्लैंग कंपाइलर नहीं है।
फिवर

जवाबों:


586
  1. उल्लेख के रूप में Xcode और Xcode कमांड लाइन उपकरण स्थापित करें।
  2. इसके बजाय तकिया का उपयोग करें, क्योंकि पीआईएल मूल रूप से मृत है। पिलो पीआईएल का एक अनुरक्षित कांटा है।

https://pypi.python.org/pypi/Pillow/2.2.1

pip install Pillow

यदि आपके पास दोनों पायथन स्थापित हैं और Python3 के लिए इसे स्थापित करना चाहते हैं:

python3 -m pip install Pillow

5
clangजब मैंने यह कोशिश की तो मुझे OSX Mavericks पर एक त्रुटि मिली , लेकिन मैंने पाया कि इस जवाब से इसमें मदद मिली: stackoverflow.com/a/22322645/16959
जेसन स्पर्सके

34
हालांकि यह एक मान्य और उपयोगी उत्तर है, यह वास्तव में सवाल का जवाब नहीं देता है। पुरानी परियोजनाओं को फिर से शुरू करने की प्रक्रिया में हममें से जिन लोगों को जनहित याचिका भरने की आवश्यकता हो सकती है, इसलिए हम अगली चीज को पा सकते हैं जो टूट जाएगी, हमें वास्तव में वास्तविक निर्भरता प्राप्त करने की आवश्यकता है (और कभी-कभी एक विशिष्ट संस्करण प्राप्त करने की भी आवश्यकता है। कि किसी ने एक हैक बनाया)।
नेमी

3
@ नोमी पोर्टिंग मौजूदा पिल कोड टू पिलो को आसानी से किया जा सकता है । पोर्ट पीआईएल टू पिलो । पिलो PIL कोड पर आधारित है, और PIL के बेहतर, आधुनिक और अधिक अनुकूल संस्करण में विकसित हुआ है।
गिरीबी

7
@ गिरीबी अपडेट के लिए धन्यवाद। मेरा मुख्य बिंदु यह था कि अक्सर ऐसे मामले होते हैं जहाँ आप कुछ विरासत उत्पादन कोड पर काम शुरू कर रहे हैं जहाँ 20 प्राचीन निर्भरताएँ हैं, जिनमें से PIL एक हो सकती है, और आपको उत्पादन कोड में फ़िक्स बनाने के लिए कुछ डीबग करना होगा। उस स्थिति में, आप सबसे अधिक आश्वस्त रूप से उत्पादन परिवेश में होने वाली एक-पंक्ति त्रुटि को डीबग करना प्रारंभ करने के लिए अपने देव बिल्ड पर ~ 10 विभिन्न पुस्तकालयों से जुड़े कोड के लिए पोर्ट लिखना नहीं चाहते हैं। आशा है कि यह स्पष्ट करता है।
नेमी

मैं एक पुस्तकालय का उपयोग करने की कोशिश कर रहा हूं जो उपयोग करता है import Image। क्या पिलो को छवि प्रदान करने का एक तरीका है?
अन्नपूर्णे

60

यह मेरे लिए काम करता है:

apt-get install python-dev
apt-get install libjpeg-dev
apt-get install libjpeg8-dev
apt-get install libpng3
apt-get install libfreetype6-dev
ln -s /usr/lib/i386-linux-gnu/libfreetype.so /usr/lib
ln -s /usr/lib/i386-linux-gnu/libjpeg.so /usr/lib
ln -s /usr/lib/i386-linux-gnu/libz.so /usr/lib

pip install PIL  --allow-unverified PIL --allow-all-external

9
64 बिट प्लेटफार्मों पर, लिंक किए गए पथ को अलग करने की आवश्यकता है - जैसे /usr/lib/x86_64-linux-gnu/libfreetype.so। एक अधिक वास्तुकला स्वतंत्र समाधान के लिए, लिंक बनाएं जैसे# ln -s /usr/lib/`uname -i`-linux-gnu/libfreetype.so /usr/lib/
मार्क चेकरियन

इमेजिंग के हेडर के लिए हमेशा एक ही समस्या: _imagingft.c: 73: 31: घातक त्रुटि: freetype / fterrors.h: ऐसी कोई फ़ाइल या निर्देशिका #include <freetype / fterrors.h> आपको python-इमेजिंग थ्रू पाइप को स्थापित करना होगा
c24b

हमेशा इस तरह के उल्लेख में freetype हेडर में एक समस्या है [ askubuntu.com/questions/507459/… ? SOlution: cd / usr / में ln -s freetype2 freetype
c24b

1
ubuntu 14.04 के तहत 1 और सिमिलिंक आवश्यक है sudo ln -s /usr/include/freetype2 /usr/local/include/freetype
आकाश

1
मेरे लिए अच्छी तरह से काम किया गया रहस्य था
वसूल

54

इसे स्थापित करने के लिए उपयुक्त कमांड का उपयोग करके यह स्थापित करना बहुत सरल है

sudo apt-get install python-PIL

या

sudo pip install pillow

या

sudo easy_install pillow

2
यदि आप एक चला रहे हैं तो अपने ipython नोटबुक सर्वर को पुनरारंभ करना न भूलें।
8

sudo pip इंस्टॉल तकिया मेरे लिए काम करता है। sudo apt-get install अजगर-पीआईएल नहीं किया।
यू शेन

1
मुझे यह मामला संवेदनशील लग रहा था इसलिए: sudo apt-get install python-PIL => विफल (कोई पैकेज नहीं मिला) sudo apt-get install python-pil => काम किया
Clarkey252

35

Mac OS X पर, इस कमांड का उपयोग करें:

sudo pip install https://effbot.org/media/downloads/Imaging-1.1.7.tar.gz

डेबियन jessy पर काम किया और साथ ही !, बस पहले से अजगर-देव स्थापित करने के लिए :) की जरूरत
agey

1
मुझे पहले libjpeg स्थापित करना था: brew install libjpeg
पियरे एफ

अंत में एक वास्तविक समाधान। मेरे मैक में apt-get नहीं है: p, और मैं वैसे भी एक virtualenv में स्थापित करना चाहता हूं।
सूदो

sudo pip install पिलो का उपयोग करें - नीचे के रूप में।
जॉन्डपोप


26

मुझे यहाँ एक चर्चा से जवाब मिला :

मैंने कोशिश की

pip install --no-index -f http://dist.plone.org/thirdparty/ -U PIL

और यह काम किया।


8
इसका उपयोग करने पर विचार करें: pip install --no-index -f http://effbot.org/downloads/ -U PIL --trusted-host effbot.orgजिस कारण से मैंने इसका उपयोग किया है, क्योंकि यह पैकेज द्वारा सूचीबद्ध URL है और pypi.python.org/pypi/PIL
टॉम मायडेल्टन

1
मुझे HTTP के बजाय HTTPS का उपयोग करने के लिए एक चेतावनी मिली। URL बदलने के बाद इसने बहुत अच्छा काम किया।
अन्नपूर्णे

@TomMyddeltyn जो लगभग काम करता है, सिवाय इसके कि मुझे एक संकलक त्रुटि मिली जहां यह X11 / Xlib.h नहीं मिल सकता है
असामान्य

@ असामान्य मुझे यकीन नहीं है कि मुद्दा क्या है, क्षमा करें।
टॉम मायडेल्टन 13

21

इंस्टॉल

pip install Pillow

फिर, जैसे आपकी फ़ाइल में आयात करें,

from PIL import Image

मैं विंडोज़ का उपयोग कर रहा हूँ। यह मेरे लिए काम कर रहा है।

नोट :

तकिया पायथन इमेजिंग लाइब्रेरी के लिए एक कार्यात्मक ड्रॉप-इन प्रतिस्थापन है। पिलो के साथ अपने मौजूदा पीआईएल-संगत कोड को चलाने के लिए, वैश्विक नाम स्थान के बजाय पीआईएल नाम स्थान से इमेजिंग मॉड्यूल को आयात करने के लिए इसे संशोधित करने की आवश्यकता है।

अर्थात परिवर्तन:

import Image

सेवा:

from PIL import Image

https://pypi.org/project/Pillow/2.2.1/


धन्यवाद! जब from PIL import Imageमैं 'पीआईएल' नाम पढ़ रहा था तो मैं कभी भी इस लाइब्रेरी के नाम का अनुमान नहीं लगा सका था। मैं विंडोज पर भी हूं और आपके समाधान ने मेरे लिए काम किया।
मार्कोस बुर्के

तकिया पायथन इमेजिंग लाइब्रेरी के लिए एक कार्यात्मक ड्रॉप-इन प्रतिस्थापन है। पिलो के साथ अपने मौजूदा पीआईएल-संगत कोड को चलाने के लिए, वैश्विक नाम स्थान के बजाय पीआईएल नाम स्थान से इमेजिंग मॉड्यूल को आयात करने के लिए इसे संशोधित करने की आवश्यकता है। यानी परिवर्तन: import Imageके लिए from PIL import Image pypi.org/project/Pillow/2.2.1
चंदन शर्मा

अतिरिक्त bckground जानकारी के लिए धन्यवाद!
मार्कोस बुर्के

12

मुझे लगता है कि आप मैक पर हैं। देखें कि मैं मैक ओएस एक्स 10.7.2 शेर पर पीआईएल कैसे स्थापित कर सकता हूं

यदि आप [होमब्रे] [] का उपयोग करते हैं, तो आप पीआईएल को बस के साथ स्थापित कर सकते हैं brew install pil। फिर आपको $(brew --prefix)/lib/python2.7/site-packagesअपने PYTHONPATH में इंस्टॉल निर्देशिका ( ) को जोड़ने की आवश्यकता हो सकती है , या PIL.pthअपने किसी भी साइट-पैकेज निर्देशिका में फ़ाइल नामक पीआईएल निर्देशिका के स्थान को सामग्री के साथ जोड़ने की आवश्यकता हो सकती है :

/usr/local/lib/python2.7/site-packages/PIL

(मान रहा brew --prefixहै /usr/local)।

वैकल्पिक रूप से, आप इसे स्रोत से बस डाउनलोड / निर्माण / स्थापित कर सकते हैं:

# download
curl -O -L http://effbot.org/media/downloads/Imaging-1.1.7.tar.gz
# extract
tar -xzf Imaging-1.1.7.tar.gz
cd Imaging-1.1.7
# build and install
python setup.py build
sudo python setup.py install
# or install it for just you without requiring admin permissions:
# python setup.py install --user

मैं अभी ऊपर (OSX 10.7.2 पर, XCode 4.2.1 और सिस्टम पायथन 2.7.1 के साथ) भागा, और यह सिर्फ ठीक बनाया गया, हालाँकि इस बात की संभावना है कि मेरे वातावरण में कुछ न के बराबर है।

[होमब्रेव]: http://mxcl.github.com/homebrew/ "होमब्रेव"


हालांकि यह बताता है कि कैसे स्थापित किया जाए pil, यह ऐसा नहीं करता है pipजैसा कि ओपी ने शुरू में किया था। मैं brewइन दिनों वेब के चारों ओर प्रचुर मात्रा में उपयोग कर रहा हूं । brewक्या आप इसे करना चाहते हैं के आधार पर ओवरहेड का एक सा स्थापित करेंगे। तो pipशायद अभी भी अजगर मॉड्यूल के लिए सबसे अच्छा विकल्प होगा।
mknaf

11

इन दिनों, हर कोई पीआईएल के ऊपर एक अनुकूल पीआईएल कांटा, तकिया का उपयोग करता है।

के बजाय: sudo pip install pil

करना: sudo pip install pillow

$ sudo apt-get install python-imaging
$ sudo -H pip install pillow

मैं कभी भी करने के खिलाफ सलाह दूंगा sudo pip install ...। यह आपके सिस्टम के पायथन की स्थापना को समाप्त कर सकता है, जो आपके सिस्टम के अनुप्रयोगों को प्रभावित कर सकता है। एनाकोंडा आभासी वातावरण , वेनव या डॉकर का उपयोग करने का प्रयास करें ।
n1k31t4

11

उबंटू के लिए, पीआईएल कोई और काम नहीं कर रहा है। मुझे हमेशा मिलता है:

पीआईएल के लिए कोई मिलान वितरण नहीं मिला

तो अजगर-इमेजिंग स्थापित करें:

sudo apt-get install python-imaging

6

मैं एक ही समस्या आ रहा है, लेकिन यह की स्थापना के साथ हल हो जाता है python-dev

पीआईएल स्थापित करने से पहले, निम्नलिखित कमांड चलाएँ:

sudo apt-get install python-dev

फिर PIL स्थापित करें:

pip install PIL

10
यह उबंटू 14. पर मेरे लिए काम नहीं करता था। pip install pilपरिणाम No distributions at all found for PIL, मैं पहले पायथन-देव स्थापित करता हूं या नहीं।
aliteralmind

5

स्थापना के दौरान मेरी कुछ त्रुटियां थीं। बस किसी मामले में यह भी है। इसके बावजूद मैं पहले से ही व्यवस्थापक उपयोगकर्ता के नीचे बैठा था, लेकिन रूट नहीं।

File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/PIL'

Storing debug log for failure in /Users/wzbozon/Library/Logs/pip.log

"Sudo" को जोड़ने से समस्या हल हो गई, sudo के साथ इसने काम किया:

~/Documents/mv-server: $ sudo pip install Pillow


5

मैंने सभी उत्तरों की कोशिश की, लेकिन असफल रहा। आधिकारिक साइट से सीधे स्रोत प्राप्त करें और फिर इंस्टॉल सफलता का निर्माण करें।

  1. साइट http://www.pythonware.com/products/pil/#pil117 पर जाएं
  2. स्रोत डाउनलोड करने के लिए "पायथन इमेजिंग लाइब्रेरी 1.1.7 सोर्स किट" पर क्लिक करें
  3. tar xf Imaging-1.1.7.tar.gz
  4. cd Imaging-1.1.7
  5. sudo python setup.py install


3

इसे इस्तेमाल करे:

sudo pip install PIL --allow-external PIL --allow-unverified PIL

2
हालांकि यह उत्तर सही हो सकता है, कृपया कुछ स्पष्टीकरण जोड़ें। अंतर्निहित तर्क को लागू करना केवल कोड देने से ज्यादा महत्वपूर्ण है, क्योंकि यह ओपी और अन्य पाठकों को इसे और इसी तरह के मुद्दों को स्वयं ठीक करने में मदद करता है।
कोडमॉउस92

ध्यान दें कि यह आदेश मेरे लिए समयबद्ध है। वैसे भी, यह कुछ ही हफ्तों में पदावनत हो जाएगा। sudo pip install --allow-external --allow-unverified PIL PILअब के लिए भी काम कर सकते हैं।
लर्निंग स्टैट्स उदाहरण के लिए

3
--allow-externalऔर --allow-unverifiedदोनों पदावनत हैं। pip install pillowसही उत्तर है।
डोरियन

1
मैंने जो उत्तर पोस्ट किया, वह मुझे stderr द्वारा सुझाया गया था। इसलिए जब मेरा उत्तर अब पुराना हो गया है, यह उस समय नहीं था जब मैंने इसे लिखा था। इसके अलावा, मैं अपने संदेश के लिए माफी चाहता हूं जो जेसनमेक्92 को निर्देशित किया गया है (जो तब से हटा दिया गया है)। मेरा स्वर लाइन से बाहर था, लेकिन मेरी भावना बनी हुई है। फ्रंट पेज को ट्रोल करने और "अंतर्निहित तर्क प्रदान करने" के बारे में अपने नोट को कॉपी / पेस्ट करने के बारे में कुछ अरुचिकर है। शायद आप बैज का पीछा कर रहे हैं, और मुझे लगता है कि यह ठीक है, लेकिन स्थिरता के लिए, कृपया इस प्रश्न के अन्य सभी समान उत्तरों पर एक टिप्पणी छोड़ दें जो तर्क को कम करने में विफल हैं।
अल्फोंसो


3
  • पहले आपको इसे चलाना चाहिए sudo apt-get build-dep python-imagingजो आपको उन सभी आश्रितों को दे देगा जिनकी आपको आवश्यकता हो सकती है

  • फिर भागो sudo apt-get update && sudo apt-get -y upgrade

  • के बाद sudo apt-get install python-pip

  • और फिर अंत में पीआईएल स्थापित करें pip install pillow


2

उपयोग करने से पहले पैकेज प्रबंधक पर खोजें pip। Arch linux पर आप PIL प्राप्त कर सकते हैंpacman -S python2-pillow


0

वहाँ एक और पायथन पैकेज टूल कहा जाता है conda। कॉनडा को प्राथमिकता दी जाती है (मेरा मानना ​​है) पाइप पर जब पुस्तकालयों में सी ++ और अन्य बाइंडिंग स्थापित करने की आवश्यकता होती है जो शुद्ध पायथन नहीं होते हैं। कॉनडा में इसकी स्थापना में पाइप शामिल है और साथ ही आप अभी भी पाइप का उपयोग कर सकते हैं, लेकिन आपको कोंडा के लाभ भी मिलते हैं।

Conda डिफ़ॉल्ट रूप से IPython , pil और कई अन्य लाइब्रेरी भी स्थापित करता है । मुझे लगता है तुम इसे पसंद करोगे।

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