我的主要操作系统是Windows 10,但我使用cygwin作为终端。通过pip3 install uwsgi
命令安装uwsgi时,它失败,并显示错误消息“ AttributeError:模块'os'没有属性'uname'”
答案 0 :(得分:1)
uWSGI需要使用c编译器来构建,并且要使用platform.uname的os.uname需要在uwsgiconfig.py文件中进行更新。
这是Windows 10修复方法:
cd到uwsgi安装目录并打开uwsgiconfig.py
使用以下代码行将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]
使用cygwin安装以下软件包,以确保您具有cygwin终端可用的python3和gcc,而不仅仅是Windows上安装的python。这是Windows之外的单独python安装。
运行以下命令: 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 :(得分: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]