无法在Ubuntu 14.04上使用Python 3.4安装uWSGI(path?)

大的情况是,我想用nginx,uWGI和Python 3(virtualenv)启动一些项目的Ubuntu服务器。

我确实按照可以在各个地方find的build议。 当尝试使用sudo pip install uwsgi安装uwsgi来安装uWSGI时,我确实观察到以下错误:

 plugins/python/uwsgi_python.h:2:20: fatal error: Python.h: No such file or directory 

我从2012年9月就已经find了[JFSebastian的评论] [1],其中关于$ sudo apt-get install python2.7-dev的必要性 – 它是针对Python 2.7的。 所以,我做了类似的Python 3.4(似乎成功)。 不过,我仍然观察错误。

当试图searchPython.h ,我可以find:

 $ locate Python.h /usr/include/python3.4m/Python.h 

还应该设置什么来使uWSGI安装? (即使我在中年以前和Unix一起工作,我对Ubuntu Linux还是比较陌生的)

更新:

遵循下面的评论jwalker的build议,我做了pip install uwsgi从激活的virtualenv pip install uwsgi没有sudo 。 但是,然后安装程序不能创buildvenv目录中的子目录(如build )。 我试图chmod go+w gov chmod go+w的venv,但它没有帮助。 我承认我对virtualenv和pip一无所知,而且我的Unix知识也有点生疏:

  ... File "/var/www/hec_project/hec_venv/lib/python3.4/site-packages/pip/req.py", line 218, in build_location _make_build_dir(build_dir) File "/var/www/hec_project/hec_venv/lib/python3.4/site-packages/pip/req.py", line 1527, in _make_build_dir os.makedirs(build_dir) File "/var/www/hec_project/hec_venv/lib/python3.4/os.py", line 237, in makedirs mkdir(name, mode) PermissionError: [Errno 13] Permission denied: '/var/www/hec_project/hec_venv/build' Storing debug log for failure in /home/hecadmin/.pip/pip.log 

安装Python 3:

 sudo apt-get install python3 

安装Python 3头文件以从源代码构建uWSGI:

 sudo apt-get install python3-dev 

在当前目录的venv创建一个Python 3 virtualenv(如果当前目录有特权,用sudo预先安装命令):

 virtualenv -p python3 venv 

激活venv作为pip的目标( .source的快捷方式):

 . venv/bin/activate 

最后,安装uWSGI(如果在特权目录中,则再次安装sudo ):

 pip install uwsgi 

你有没有为uwsgi安装正确的python插件?

http://packages.ubuntu.com/precise/uwsgi-plugin-python3

然后在配置文件(你的.ini文件)把python3作为插件,而不是像这样的python

 [uwsgi] plugins = python3 # Rest of your configuration...