Nie można zainstalować PIL po Mac OS X 10.9


132

Właśnie zaktualizowałem swój system Mac OS do 10.9 i odkryłem, że niektórych (wszystkich?) Z moich modułów Pythona już nie ma, zwłaszcza modułu Image.

Więc próbuję wykonać sudo pip install pil, ale pojawia się ten błąd:

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/tk.h:78:11: fatal error: 'X11/Xlib.h' file not found

#      include <X11/Xlib.h>

               ^

1 error generated.

error: command 'cc' failed with exit status 1

Mój Xcode jest aktualny i nie mam pojęcia. Czy to możliwe, że PIL nie jest jeszcze kompatybilny z 10.9?


Brak odpowiedzi, ale czy wypróbowałeś Pillow? pypi.python.org/pypi/Pillow/2.2.1 - jest to bardzo dobrze obsługiwane narzędzie PIL.
— James Addison,

4
@JamesAddison Pillow 2.2.1 działa podobnie.
— Adam J. Forster

chceszpip install pillow
— kilodżule

W systemie macos 10.10.5 Yosemite, pip install Pillow==5.0.0działa, instaluje .../site-packages/PIL. (Dlaczego 5.0.0? Zobacz problem ).
— denis

Odpowiedzi:


211

Pracowały dla mnie następujące:

ln -s  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 /usr/local/include/X11
sudo pip install pil

AKTUALIZACJA:

Ale poniżej jest bardziej poprawne rozwiązanie dostarczone przez Willa.

otwórz terminal i wykonaj: xcode-select --install


2
Twoja odpowiedź ma literówkę, to MacOS10.9.sdknie MacOS0.9.sdk.
— Bryan Veloso,

3
Jeśli chcesz mieć również PIL / Poduszkę z obsługą zlib / png / zip, musisz również zrobić:ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/zlib.h /usr/local/include/
— gromgull

26
sugerowane polecenie wywołuje okno dialogowe błędu z Apple. Najpierw pyta, czy chcę pobrać XCode (który mam), czy „zainstalować”. Wybieram zainstaluj. Pojawia się umowa EULA, akceptuję, po czym pojawia się okno dialogowe błędu: „Nie można zainstalować oprogramowania, ponieważ nie jest ono obecnie dostępne na serwerze aktualizacji oprogramowania”.
— Matt Feifarek,

7
Napotkałem błąd Downloading/unpacking pil Could not find any downloads that satisfy the requirement pil Some externally hosted files were ignored (use --allow-external pil to allow). Cleaning up... No distributions at all found for pil Storing debug log for failure in /Users/Usermania/.pip/pip.log
— Leonid

1
ln: / usr / local / include / X11: Nie ma takiego pliku lub katalogu, którego nie mam / usr / local / include / X11?
— mucha prosiaczka

102

otwórz terminal i wykonaj:

xcode-select --install


2
Pytanie nie dotyczy instalacji Xcode, ale PIL ... Ponadto wyjaśniłem, że mam już zainstalowany i aktualny Xcode.
— Vincent Audebert

5
To również rozwiązuje problem (instaluje narzędzia wiersza poleceń, które nie są instalowane domyślnie z Xcode).
— Rob Osborne

1
To wszystko, co musiałem zrobić, bez tych dowiązań symbolicznych.
— joerick

@VincentShowcaseWorkshop Xcode nie instaluje domyślnie narzędzi wiersza poleceń. Musiałem to zrobić, aby ominąć ten sam problem, co systemy operacyjne, mimo że z całą pewnością miałem już zainstalowany Xcode i aktualny w systemie Mac OS 10.9.2.
— Tony Adams,

To rozwiązuje problem z wersją Mac 10.11.2 (15C50).
— webtweakers

34
sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11/ /usr/local/include/X11

pomaga mi! os x 10.9

pip install pillow

ale! po instalacji pip ...

*** ZLIB (PNG/ZIP) support not available

i wreszcie naprawiam to, uruchamiając:

xcode-select --install

następnie zainstaluj ponownie poduszkę

pip install pillow

PIL SETUP SUMMARY
    --------------------------------------------------------------------
    version      Pillow 2.2.1
    platform     darwin 2.7.5 (default, Aug 25 2013, 00:04:04)
                 [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)]
    --------------------------------------------------------------------
    --- TKINTER support available
    --- JPEG support available
    --- ZLIB (PNG/ZIP) support available
    --- TIFF G3/G4 (experimental) support available
    --- FREETYPE2 support available
    --- LITTLECMS support available
    --- WEBP support available
    --- WEBPMUX support available
    --------------------------------------------------------------------

zaktualizowany do Mavericks wczoraj i właśnie dzisiaj zaczynałem projekt, właśnie zaoszczędziłeś mi godzin bólu serca DZIĘKI!
— javiercf

To musiałem zrobić $> ARCHFLAGS = -Wno-error = unused-command-line-argument-hard-error-in-future pip install poduszka
— Sudhir

1
dzięki! do użytku 10.10: sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers / X11 / usr / local / include / X11
— rozochkin

14

Działa dla mnie (OS X Yosemite 10.10.2 - Python 2.7.9):

xcode-select --install
sudo pip install pillow

Spróbuj tego, aby to sprawdzić:

from PIL import Image
image = Image.open("file.jpg")
image.show()

11

Oto, co zrobiłem, niektóre kroki mogą nie być konieczne tylko dla PIL, ale i tak potrzebowałem libpng i innych:

1) Uruchom instalację xcode, użyj tego polecenia lub pobierz aktualizacje ze sklepu z aplikacjami:

xcode-select --install

1b) Dodaj opcjonalne narzędzie Command Line Tools, w Mountain Lion była to opcja na stronie pobierania xcode, ale teraz musisz zarejestrować się przy użyciu swojego identyfikatora Apple i pobrać z: https://developer.apple.com/downloads/

Poszukaj narzędzi wiersza polecenia (OS X Mavericks) dla Xcode

2) Zainstaluj wszystko, co jest potrzebne do Pythona (używając brew), myślę, że możesz również użyć portu:

brew install readline sqlite gdbm
brew install python --universal --framework 
brew install libpng jpeg freetype

W razie potrzeby odłącz / połącz ponownie, np. W przypadku aktualizacji.

3) Zainstaluj Pip i wymagane moduły:

easy_install pip 
sudo pip install setuptools --no-use-wheel --upgrade

4) Wreszcie działa to bez błędów:

sudo pip install Pillow

UPDATE 11/04/14: repozytorium PIL nie otrzymuje już aktualizacji ani wsparcia, więc należy używać Pillow. Poniższe informacje są teraz przestarzałe, więc trzymaj się poduszki.

sudo pip install pil --allow-external pil --allow-unverified pil

AKTUALIZACJA (STARY): To samo dotyczy montażu poduszki (widelca PIL) i należy o tym wspomnieć, ponieważ w większości przypadków PIL szybko zastępuje. Zamiast instalować pip w kroku 4, uruchom to:

sudo pip install Pillow

Mam nadzieję, że to komuś pomoże!


Krok 4) może kończyć się czymś podobnym _imagingft.c:73:10: fatal error: 'freetype/fterrors.h' file not found. Ale można to rozwiązać, wykonując stackoverflow.com/questions/20325473/… .
— Królik Bugs

montujesz pil czy poduszkę? PIL jest przestarzały, zaktualizuję to.
— radtek

Nieważne. PIL lub Pillow, może być nadal przydatne dla niektórych osób, aby rozwiązać problem z linkami symbolicznymi freetype / freetype2. Ale dzięki!
— Królik Bugs

Tak, dodałem rzeczy w kroku 2 do odłączenia / połączenia w przypadku aktualizacji. Jeśli czegoś brakuje, możesz edytować i zaakceptuję?
— radtek

1
sudo pip install pil --allow-external pil --allow-unverified pil pomógł mi w 2015
— fun_vit

9

zainstalowanie narzędzi wiersza poleceń rozwiązało problem

musisz je zainstalować osobno, ponieważ nie są one teraz częścią pakietów w xcode:

https://developer.apple.com/downloads/index.action?=command%20line%20tools#


1
Zdecydowanie wolę takie podejście. Nienawidzę tworzenia niestandardowych linków symbolicznych z pakietami systemowymi ... nigdy nie wiesz, co się
— zepsuje

Wygląda na to, że teraz jest to zły adres URL.
— Matt Feifarek,

@MattFeifarek ten URL działał dla mnie dzisiaj. Musiałem zalogować się za pomocą konta dewelopera, ale potem trafiłem na odpowiednią stronę pobierania narzędzi wiersza poleceń.
— Tony Adams

8

Żaden z tych nie działał dla mnie .. Ciągle otrzymywałem:

clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]
clang: note: this will be a hard error (cannot be downgraded to a warning) in the future
error: command 'cc' failed with exit status 1

Więc znalazłem obejście z następującym rozwiązaniem:

sudo export CFLAGS=-Qunused-arguments
sudo export CPPFLAGS=-Qunused-arguments
sudo pip install PIL --allow-external PIL --allow-unverified PIL

W ten sposób mogłem zainstalować.


To jest ten, który naprawił to dla mnie. Jeśli pracujesz w środowisku wirtualnym, nie potrzebujesz polecenia sudo.
— Eric

Dziękuję Ci! Działa to w środowisku wirtualnym Python. Nie mam aktualnie zainstalowanego Xcode, więc zaoszczędził mi to czas pobierania.
— Jamie Counsell

Działa to świetnie dla starego xcode w 10.8, czy działało dla Mavericks?
— radtek

6

Miałem podobny problem: instalacja poduszki nie powiodła się clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future], instalacja narzędzi wiersza poleceń nie powiodła sięCan't install the software because it is not currently available from the Software Update server. , a nawet po ręcznej instalacji narzędzi wiersza poleceń kompilacja PIL nie powiodła się.

Dzieje się tak, ponieważ brzęk w najnowszej wersji xcode nie ostrzega o nieznanych flagach kompilatora, ale raczej zatrzymuje kompilację z twardym błędem.

Aby to naprawić, po prostu uruchom export ARCHFLAGS="-Wno-error=unused-command-line-argument-hard-error-in-future"na terminalu przed próbą kompilacji (instalacją pil).


5

Po prostu biegnij

pip install pil --allow-external pil --allow-unverified pil


3

To moje kroki w systemie Mac OS 10.9.1

1. sudo su
2. easy_install pip
3. xcode-select --install
4. pip install --no-index -f http://dist.plone.org/thirdparty/ -U PIL

2

Możesz użyć Homebrew do zainstalowania http://brew.sh

brew tap Homebrew/python
brew install pillow

Cześć rchapman. Kiedy biegnę brewdo zainstalowania samueljohn / python / poduszka, daje taki komunikat: pillow-2.5.1 already installed, it's just not linked. A przed tym, istnieje 15 ostrzeżenia takie jak: Could not tap homebrew/python/cpyrit-cuda over samueljohn/python/cpyrit-cuda. Jakieś pomysły, dlaczego tak się dzieje? Albo jak mogę połączyć poduszkę?
— 0xmtn

2

Upewnij się, że masz zainstalowane narzędzia wiersza poleceń w swoim xcode. Następnie wykonaj:

sudo pip install pil --allow-external pil --allow-unverified pil

Udało mi się go zainstalować bez narzędzi wiersza poleceń, używając Xcode for Mavericks.
— radtek

2

Wystąpił następujący błąd

building 'PIL._imagingft' extension
_imagingft.c:62:10: fatal error: 'freetype/fterrors.h' file not found

#include <freetype/fterrors.h>

         ^

1 error generated.

error: command 'cc' failed with exit status 1

Rozwiązaniem tego problemu było dowiązanie symboliczne freetype2 do dowolnego typu i to rozwiązało problem.


2

Nie chciałem instalować XCode (nie używam go) i nie lubię bawić się katalogiem aplikacji. Wyciągnąłem z wielu odpowiedzi w tym poście i następujące dwa kroki działają dla mnie z 10.9.5:

sudo easy_install pip
sudo pip install pillow

Wydało mi się dziwne, że do zainstalowania pip musiałem użyć easy_install. Ale pip nie chciał dla mnie pracować przed tą (ponowną) instalacją.


1

Znalazłem rozwiązanie ... Musisz połączyć symboliczne X11 w ten sposób, ln -s /opt/X11/include/X11 /usr/local/include/X11a potem sudo pip install pilpowinno działać.


nie działa dla mnie ... czy zaktualizowałeś swój xcode, zanim zaczął działać? czy wielokrotnie restartowałeś Maca? to mnie frustruje. ughs.
— bonbon.langes

Zrobiłem wcześniej aktualizację xcode i ponownie uruchomiłem komputer Mac, nawet jeśli nie jestem pewien, czy jest to pomocne. Może droga do twojego X11 nie jest dla ciebie taka sama. Może wypróbuj inne odpowiedzi.
— Vincent Audebert

1

Ponowne użycie odpowiedzi @ DmitryDemidenko, tak to zadziałało dla mnie:

ln -s  /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 /usr/local/include/X11

i wtedy

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

1

Wykonaj poniższe polecenia. Działa jak urok w systemie Mac OS 10.9.5

easy_install pip

sudo pip install setuptools --no-use-wheel --upgrade

sudo pip zainstaluj poduszkę

Najlepsze, Theo


0

To jest to co zrobiłem:

Pierwsza aktualizacja do Xcode 5 (mam 10.9). Następnie wykonaj następujące polecenia w terminalu:

$ /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk
$ ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 usr/include/

1
Podobnej odpowiedzi udzielono i zaakceptowano dwa tygodnie temu. Nie widzę twojej dodatkowej wartości ...
— Soravux

Cóż, ta odpowiedź ma inne ścieżki niż przyjęta. Dodałem tę wersję jako komentarz do zaakceptowanej odpowiedzi. Polecenie tosudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/X11
— osa

0

Bardziej kompletne rozwiązanie wymaga instalacji podsystemu Xquartz X11, który od kilku lat budowany jest poza firmą Apple. Oto kroki, które zastosowałem, aby to wszystko działało

  1. Zainstaluj XQuartz z http://xquartz.macosforge.org/landing/
  2. Biegać sudo pip install pillow

0

Ponieważ przyjęta odpowiedź jest właściwa, xcode-select --installale niektórzy ludzie (w tym ja) mogą się spotkaćCan't install the software because it is not currently available from the Software Update server Jeśli używasz oprogramowania w wersji beta (ponieważ używam teraz Yosemite i miałem ten sam problem), POTRZEBUJESZ osobno pobrać CLT, ponieważ NIE jest ono uwzględnione XCode (nawet xcode beta) Udaj się na developers.apple.com i zdobądź narzędzia CLT dla swojego systemu operacyjnego;)

PS Nie potrzebujesz XQuartz do pracy PIL lub Pillow



0

Zamiast tego zainstaluj poduszkę :

sudo pip install pillow

Nadal potrzebujesz całej konfiguracji wstępnej, tak jak w przypadku PIL
— radtek

@radtek no you don't on Mac 10.9. Czy faktycznie wypróbowałeś polecenie, zanim zagłosowałeś w dół na moją odpowiedź?
— Bobo

Nie przegłosowałem twojej odpowiedzi, zagłosowałem za, ale tak, próbowałem. Zrobiłem to już kilka razy i właściwie nie potrzebowałem kroku 1b, ale wszystkiego innego, czego potrzebowałem.
— radtek

0
ln -s /usr/local/include/freetype2 /usr/local/include/freetype
sudo ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install pil


0
sudo pip uninstall pillow
pip install pillow

pracował dla mnie. Używam Pythona 2.7.9 na Yosemite. import PILteraz działa dla mnie.


0

Instalowanie PIL (Imaging.1.1.7) w systemie Mac OSC 10.10 Yosemite. Wypróbowałem wiele zalecanych tutaj poprawek, ale z każdą napotkałem problemy. W końcu rozwiązałem ten problem, edytując plik setup.py w taki sposób, że:

TCL_ROOT = "/ opt / X11 / include"

który przekazuje odpowiednią ścieżkę włączania dla X11 w kompilacji _imagingtk.c, co było przyczyną problemu. Pracował natychmiast po zmianie.



-4
  1. ln -s / opt / X11 / include / X11 / usr / local / include / X11
  2. pip zainstaluj pil bez sudo
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.