无法在Cygwin上安装uwsgi

时间:2019-01-15 14:20:34

标签: python-3.x windows cygwin

我的主要操作系统是Windows 10,但我使用cygwin作为终端。通过pip3 install uwsgi命令安装uwsgi时,它失败,并显示错误消息“ AttributeError:模块'os'没有属性'uname'”

3 个答案:

答案 0 :(得分:1)

uWSGI需要使用c编译器来构建,并且要使用platform.uname的os.uname需要在uwsgiconfig.py文件中进行更新。

这是Windows 10修复方法:

  1. cd到uwsgi安装目录并打开uwsgiconfig.py

  2. 使用以下代码行将os.uname替换为platform.uname:

    uwsgi_os = os.uname ()[0] uwsgi_os_k = re.split('[-+ _]', os.uname ()[2])[0] uwsgi_os_v = os.uname ()[3] uwsgi_cpu = os.uname ()[4]

对此:

uwsgi_os = **platform.uname**()[0]
uwsgi_os_k = re.split('[-+_]', **platform.uname**()[2])[0]
uwsgi_os_v = **platform.uname**()[3]
uwsgi_cpu = **platform.uname**()[4]
  1. 使用cygwin安装以下软件包,以确保您具有cygwin终端可用的python3和gcc,而不仅仅是Windows上安装的python。这是Windows之外的单独python安装。

    • 打开Windows cmd终端
    • 将CD转换为cygwin64(或您的安装目录)
    • 运行以下命令: setup-x86_64.exe -q -P wget -P gcc-g ++ -P gcc-core -P gcc-g ++ -P libcrypt-devel -P libintl-devel -P python3 -P python3-devel

    • 此命令应为Cygwin64安装以下软件包: gcc核心 gcc-g ++ libcrypt开发 libintl-开发 python3 python3-devel

      1. 在Cygwin终端窗口中
    • cd到uwsgi目录
    • 输入并运行命令“ python3 setup.py install”
    • 等待这一切完成并跳个开心的舞。

答案 1 :(得分:1)

如果得到:

core/event.c: In function ‘event_queue_read’: core/event.c:1416:9: error: ‘UWSGI_EVENT_IN’ undeclared

可能您不使用cygwin python开始安装安装程序

答案 2 :(得分:0)

代码需要更改为:

import platform
uwsgi_os = platform.uname()[0]
uwsgi_os_k = re.split('[-+_]', platform.uname()[2])[0]
uwsgi_os_v = platform.uname()[3]
uwsgi_cpu = platform.uname()[4]