J'essaie d'installer le cadre Scrapy Python dans OSX 10.11 (El Capitan) via pip. Le script d'installation télécharge les modules requis et à un moment donné renvoie l'erreur suivante:
OSError: [Errno 1] Operation not permitted: '/tmp/pip-nIfswi-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'
J'ai essayé de désactiver la fonction rootless dans OSX 10.11 avec la commande:
sudo nvram boot-args="rootless=0";sudo reboot
mais j'obtiens toujours la même erreur lorsque la machine redémarre.
Un indice ou une idée de mes collègues StackExchangers?
Si cela peut vous aider, la sortie complète du script est la suivante:
sudo -s pip install scrapy
Collecting scrapy
Downloading Scrapy-1.0.2-py2-none-any.whl (290kB)
100% |████████████████████████████████| 290kB 345kB/s
Requirement already satisfied (use --upgrade to upgrade): cssselect>=0.9 in /Library/Python/2.7/site-packages (from scrapy)
Requirement already satisfied (use --upgrade to upgrade): queuelib in /Library/Python/2.7/site-packages (from scrapy)
Requirement already satisfied (use --upgrade to upgrade): pyOpenSSL in /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python (from scrapy)
Collecting w3lib>=1.8.0 (from scrapy)
Downloading w3lib-1.12.0-py2.py3-none-any.whl
Collecting lxml (from scrapy)
Downloading lxml-3.4.4.tar.gz (3.5MB)
100% |████████████████████████████████| 3.5MB 112kB/s
Collecting Twisted>=10.0.0 (from scrapy)
Downloading Twisted-15.3.0.tar.bz2 (4.4MB)
100% |████████████████████████████████| 4.4MB 94kB/s
Collecting six>=1.5.2 (from scrapy)
Downloading six-1.9.0-py2.py3-none-any.whl
Requirement already satisfied (use --upgrade to upgrade): zope.interface>=3.6.0 in /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python (from Twisted>=10.0.0->scrapy)
Requirement already satisfied (use --upgrade to upgrade): setuptools in /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python (from zope.interface>=3.6.0->Twisted>=10.0.0->scrapy)
Installing collected packages: six, w3lib, lxml, Twisted, scrapy
Found existing installation: six 1.4.1
DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.
Uninstalling six-1.4.1:
Exception:
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/basecommand.py", line 223, in main
status = self.run(options, args)
File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/commands/install.py", line 299, in run
root=options.root_path,
File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_set.py", line 640, in install
requirement.uninstall(auto_confirm=True)
File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_install.py", line 726, in uninstall
paths_to_remove.remove(auto_confirm)
File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/req/req_uninstall.py", line 125, in remove
renames(path, new_path)
File "/Library/Python/2.7/site-packages/pip-7.1.0-py2.7.egg/pip/utils/__init__.py", line 314, in renames
shutil.move(old, new)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move
copy2(src, real_dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2
copystat(src, dst)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat
os.chflags(dst, st.st_flags)
OSError: [Errno 1] Operation not permitted: '/tmp/pip-nIfswi-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'
python
macos
python-2.7
scrapy
Luis U.
la source
la source
Réponses:
Je pense également qu'il n'est absolument pas nécessaire de commencer à pirater OS X.
J'ai pu le résoudre en faisant
Il semble que l'utilisation du python / pip fourni avec le nouveau El Capitan pose quelques problèmes.
la source
brew install python3
pourrait peut - être résoudre ce problème car sur les nouveaux systèmes, python3 est maintenant le python par défaut.Ferait l'affaire.
Source: github.com/pypa/pip/issues/3165
la source
sudo pip install --ignore-installed awscli
ImportError: cannot import name xmlrpc_client
--ignore-installed
flag a également fait l'affaire pour l'AWS Elastic Beanstalk Cli. Enfin ...sudo pip install --ignore-installed scrapy
.Comme les autres réponses l'ont dit, c'est à cause de la nouvelle protection de l'intégrité du système, mais je pense que les autres réponses sont trop compliquées.
Si vous n'utilisez ce package que dans l'utilisateur actuel, vous devriez pouvoir l'installer très bien, sans avoir besoin de désactiver le SIP, en utilisant l'
--user
indicateur. Comme ça:la source
sudo pip install mkvirtualenv --ignore-installed six
fonctionne comme prévu, en mettant virtualenvwrapper.sh dans / usr / local / binLes réponses au vote élevé n'ont pas fonctionné pour moi, il semble fonctionner pour les utilisateurs d'El Capitan. Mais pour les utilisateurs de MacOS Sierra, essayez les étapes suivantes
brew install python
sudo pip install --user <package name>
la source
sudo pip install --user <package name>
travaillé pour moi, sans avoir besoin de réinstaller le pythonAvertissements
Je suggérerais très fortement pas modifier le système Python sur Mac; de nombreux problèmes peuvent survenir.
Votre erreur particulière montre que le programme d'installation a des problèmes pour résoudre les dépendances de Scrapy sans impact sur l'installation actuelle de Python. Le système utilise Python pour un certain nombre de tâches essentielles, il est donc important de maintenir l'installation du système stable et telle qu'initialement installée par Apple.
Je voudrais également épuiser toutes les autres possibilités avant de contourner la sécurité intégrée.
Solutions de gestionnaire de packages:
Veuillez d'abord consulter un outil de virtualisation Python tel que virtualenv ; cela vous permettra d'expérimenter en toute sécurité.
Homebrew est un autre outil utile pour utiliser les langues et les logiciels sans entrer en conflit avec votre Mac OS . Comme MacPorts ou Fink , Homebrew est un gestionnaire de packages pour Mac et est utile pour essayer en toute sécurité de nombreux autres langages et outils.
"Roll your own" Software Installs:
Si vous n'aimez pas l'approche du gestionnaire de paquets, vous pouvez utiliser le
/usr/local
chemin ou créer un/opt/local
répertoire pour installer une installation Python alternative et corriger vos chemins dans votre.bashrc
. Notez que vous devrez activer root pour ces solutions.Comment le faire quand même:
Si vous devez absolument désactiver le contrôle de sécurité (et j'espère sincèrement que c'est pour autre chose que de jouer avec les langues et les ressources du système), vous pouvez le désactiver temporairement et le réactiver en utilisant certaines des techniques de ce post sur la façon de désactiver le système Intégrité-Protection .
la source
Cela a fait l'affaire pour moi:
la source
sudo pip install virtualenvwrapper --ignore-installed six
aussi, en évitant cette erreur:OSError: [Errno 1] Operation not permitted: '/tmp/..../System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'
Vous devez désactiver la "Protection de l'intégrité du système" qui est une nouvelle fonctionnalité d'El Capitan.
Tout d'abord, vous devez exécuter la commande de configuration sans racine sur votre terminal
Ensuite, vous devez exécuter la commande ci-dessous sur le terminal de la partition de récupération (Recovery OS)
Je viens de résoudre mon problème comme ça. Je ne suis pas sûr que la première partie soit nécessaire. Essayez à votre guise.
--AVERTISSEMENT
Vous devez réactiver SIP après que tout fonctionne;
Redémarrez simplement en mode de récupération et exécutez dans le terminal
csrutil: Configuration de la protection de l'intégrité du système
la source
J'ai essayé d'installer AWS via pip dans El Capitan mais cette erreur apparaît
J'ai trouvé la réponse ici
Ça marche pour moi :)
la source
J'obtenais la même erreur sur mon MacOS Sierra. J'ai suivi ces étapes et réussi à installer le package scarpy.
la source
Cela a fait l'affaire pour moi.
sudo pip install - scrapy installé par ignore
la source
J'ai essayé une combinaison de quelques réponses et cela a finalement fonctionné:
sudo -H pip install --upgrade --ignore-installed awsebcli
À votre santé
la source
réinstallez python:
Essayez à nouveau:
travaille pour moi, j'espère que cela peut aider
la source
Redémarrez Mac -> maintenez "Command + R" après le carillon de démarrage -> Ouvre les utilitaires OS X -> Ouvrez le terminal et tapez "csrutil disable" -> Redémarrez OS X -> Ouvrez le terminal et vérifiez "csrutil status"
la source
Cette commande fonctionnerait parfaitement bien: D
sudo -H pip install --upgrade package_name --ignore-installed six
la source
Parfois, un tel comportement peut être obtenu si vous essayez d'installer la bibliothèque python3 dans le dossier python2 en utilisant pip au lieu de pip3.
la source
2.
sudo C_INCLUDE_PATH = / Applications / Xcode.app / Contents / Developer / Platforms / MacOSX.platform / Developer / SDKs / MacOSX10.11.sdk / usr / include / libxml2: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX .platform / Developer / SDKs / MacOSX10.11.sdk / usr / include / libxml2 / libxml: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/ inclure pip installer scrapy --ignore-installé six
3. - puis supprimez les six anciens, réinstallez-le sudo rm -rf /Library/Python/2.7/site-packages/six* sudo rm -rf /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/ lib / python / six * sudo pip install six
4. - puis réinitialisez-le csrutil enable reboot
- merde fonctionne maintenant
la source
ça marche pour moi:
la source
Il me manquait une dépendance ailleurs sur la ligne, j'ai donc installé les autres exigences pour le projet comme ceci:
la source