मैक ओएस एक्स 10.9 पर पाइप का उपयोग करके पायथन इमेज लाइब्रेरी स्थापित करने में त्रुटि


78

मैं पाइप का उपयोग करके Mavericks पर पीआईएल स्थापित करना चाहता हूं लेकिन यह त्रुटि मिलती है।

_imagingft.c:73:10: fatal error: 'freetype/fterrors.h' file not found
#include <freetype/fterrors.h>
         ^
1 error generated.
error: command 'cc' failed with exit status 1

मेरे कमांड लाइन उपकरण स्थापित हैं और आज तक और मेरे द्वारा पाए गए हर संकेत से मदद नहीं मिली है। मैं इसे संकलन करने के लिए कैसे प्राप्त कर सकता हूं?

संपादित करें: मैंने अभी-अभी जाँच की है, फ़्रीटाइप होमब्रे के माध्यम से पहले से ही स्थापित है


आपको freetypeहेडर चाहिए।
देवनाउल

हाँ, मैंने अनुमान लगाया है कि;) बस इसे हल करने का एक तरीका मिला।
लुकास स्पीक

जवाबों:


210

Freetype2 के एक विशिष्ट संस्करण से सहानुभूति रखने के बजाय, यह करें:

ln -s /usr/local/include/freetype2 /usr/local/include/freetype

जब भी आप freetype2 को अपग्रेड करते हैं तो यह आपको सिम्लिंक को फिर से बनाने की परेशानी से बचाता है।


1
उपयोग करने के बाद sudo easy_install PIL, मैं इस मुद्दे पर आता हूं, आपका समाधान एक आकर्षण की तरह काम करता है! धन्यवाद!
सर्पिलम

3
इसने योसेमाइट पर भी इस मुद्दे को तय किया
21

मेरे पास freetype2 पहले से ही जुड़ा हुआ था, यह मूल लिंक करने के लिए सबसे अच्छा हो सकता है जो
/usr/local/Cellar/freetype/2.5.5/include/freetype2

1
@ सल्यांगोज़: / usr / स्थानीय / शामिल / freetype2 /usr/local/Cellar/freetype/2.5.5/include/freetype2 (यह Homebrew द्वारा बनाया गया है) के लिए एक सहानुभूति है। वास्तविक पथ के बजाय इसका उपयोग करते हुए, अपग्रेड करते समय लाभ होता है कि यह अभी भी काम करेगा।
mcuelenaere

2
Freetype2 को El Capitan चलाने वाली मेरी मशीन पर स्थापित नहीं किया गया था, इसलिए मुझे brew install freetypeइस
सिम्कलिन को

31

Macports के साथ, समाधान है कि मेरे लिए काम किया:

sudo port install freetype
sudo ln -s /opt/local/include/freetype2 /opt/local/include/freetype

और फिर पीआईएल निर्माण प्रक्रिया को फिर से चलाएं।


यह मेरे लिए तब काम आया जब मैंने
माविक

2.2 से cocos2dx v3.3 में अपग्रेड करते समय मेरे लिए yosemite पर काम किया
andrewz

28

मैंने इस समस्‍या के साथ इस समस्‍या को हल किया है:

ln -s /usr/local/Cellar/freetype/2.5.1/include/freetype2 /usr/local/include/freetype

मैं पहले से ही homebrew के माध्यम से भी स्थापित किया है।


5

यह freetype> = 2.1.5 के हेडर में बदलाव के कारण होता है। पीआईएल, फ़्रीटाइप हेडर को शामिल करने के लिए सही प्रलेखित तरीके का उपयोग नहीं कर रहा है, जिसके कारण बिल्ड विफल हो जाता है अब फ़्रीटाइप ने हेडर सहित लंबे समय तक हटाए गए तरीके को हटा दिया। इस समस्या को http://freetype.sourceforge.net/freetype2/docs/tutorial/step1.html के शीर्ष पर दाईं ओर प्रलेखित किया गया है :

नोट: FreeType 2.1.6 के साथ शुरू, पुरानी हेडर फ़ाइल समावेशन योजना अब समर्थित नहीं है। इसका मतलब यह है कि यदि आप कुछ ऐसा करते हैं तो आपको एक त्रुटि मिलती है:

#include <freetype / freetype.h>
#include <freetype / ftglyph.h>

कृपया इस समस्या को पीआईएल के डेवलपर्स के पास ले जाएं और उन्हें प्रलेखित हेडर सहित प्रलेखित तरीके का उपयोग करने की सलाह दें:

#include <ft2build.h>
#include FT_ERRORS_H


4

कई प्रयासों के बाद, मैंने इस समस्या को हल कर दिया, बिना एफआरआईएल समर्थन के पीआईएल का संकलन। ऐसा करने के लिए, मैंने बस अपने $ PATH का उपयोग करके brew unlink freetypeऔर फिर, से अनलिंक किया pip install PIL==1.1.7


फिर भी, क्या है? :)
स्टैंतोंक

3

मैंने इसे इस Stackoverflow उत्तर में वर्णित चरणों का उपयोग करके हल किया है । लगता है कि यह अजीब स्थानों में फ़्रीटाइप स्थापित करने के लिए Xcode की गलती है।


3

तकिया का उपयोग करें जहां यह मुद्दा "वास्तविक के लिए" तय हो:

और जहां आप समस्याओं की रिपोर्ट कर सकते हैं और उन्हें समय पर संबोधित कर सकते हैं:


2

मेरे OSx में, मैंने .hफ़ाइल को /opt/local/include/freetype2direcoty में पाया। तो, मैं टाइप करता हूं

sudo ln -s /opt/local/include/freetype2/ /usr/local/include/freetype

यह काम करता हैं

हो सकता है कि /opt/local/includeआपके क्लैंग के शामिल पथ में जोड़ने का सबसे अच्छा तरीका है ।


1

osx yosemite, यह मेरे लिए काम किया:

(virtualenv)

$ ln -s /opt/local/include/freetype2/ /usr/local/include/freetype2
$ pip install pil==1.1.7 --allow-external pil --allow-unverified pil

केवल पहली पंक्ति दौड़ा, तो यह मेरे लिए योसेमाइट पर काम किया। करने में सक्षम थाpip install PIL
हारून ऐश

0

मैं आर्क लिनक्स का उपयोग कर रहा हूं और यह समस्या थी। मेरे मामले में https://pypi.python.org/pypi/Pillow/2.2.1#downloads से जिप फाइल को मैनुअली डाउनलोड और अनपैक करना पड़ा । मैंने तब फ़ाइल _imagingft.cको संपादित किया जिसमें शामिल पथ को बदलने के freetype/fterrors.hलिए जहां fterrors.hकोई freetypeउपनिर्देशिका नहीं थी , /usr/include/freetype2जहां fterrors.hस्थित था। अंत में python setup.py installठीक काम किया।

संपादित करें: मुझे यह उल्लेख करना चाहिए कि पिलो को स्थापित करने के लिए यह समाधान था, न कि पीआईएल, लेकिन पिलो सिर्फ पीआईएल का एक कांटा है और यह अभी भी इस मुद्दे के साथ दूसरों के लिए लागू हो सकता है।


0

यदि आप अभी भी उत्तर की तलाश कर रहे हैं जैसे मैं इसे और अन्य googling को पढ़ने के बाद था, तो आप इसे देखने के लिए इच्छुक हो सकते हैं:

चेतावनी

तकिया> = 2.1.0 अब "आयात _imaging" का समर्थन नहीं करता है। इसके बजाय कृपया "PIL.Image आयात कोर से _imaging" का उपयोग करें।

से यहाँ

जब आप इसे पढ़ते हैं, तब तक शायद पेज बदल जाएगा, लेकिन पाठ अभी भी कम से कम यहां होगा।

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