之前在Mac下用pip安装PIL和Scrapy的时候遇到了几个问题,在这里Mark一下,希望给遇到相同问题的小伙伴提供一下解决问题的方法。
在Mac下安装PIL遇到的问题为:
/usr/local/include/tk.h:71:13: fatal error: 'X11/Xlib.h' file not found
# include <X11/Xlib.h>
^
1 error generated.
error: command 'cc' failed with exit status 1
显示这个文件无法找到,编译遇到问题,这个需要用ln命令建立一个这个文件的软连接,解决方法如下:
sudo ln -s /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers/X11 /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/include/X11
在你的电脑下定位一下X11这个文件,MacOSX的版本根据你自己的电脑来
执行之后,再
sudo pip install PIL --allow-external PIL --allow-unverified PIL
这样就安装成功了。注意:PIL的安装我是开的代理安装的,因为 Python Imaging Library的网站不开代理根本打不开(被墻了),如果不开代理,我这里总是显示time out。
下面讲一下Scrapy的安装,我遇到的问题为:
/private/tmp/pip-build-QNZt2m/lxml/src/lxml/includes/etree_defs.h:14:10: fatal error: 'libxml/xmlversion.h' file not found
#include "libxml/xmlversion.h"
^
1 error generated.
error: command 'cc' failed with exit status 1
显示libxm/xmlversion.h这个文件无法找到,编译无法通过,解决方法如下:
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/include pip install lxml
重新用pip 安装一下 lxml
然后问题就解决了,安装Scrapy :
sudo pip install Scrapy
这样就成功了!
注意:用sudo命令一定要输入你的密码哦,还有就是确保pip已经安装了!