安装uwsgi,安装步骤如下

wget https://projects.unbit.it/downloads/uwsgi-latest.tar.gz
tar zxvf uwsgi-latest.tar.gz
cd <dir>
python uwsgiconfig.py --build

报错

using profile: buildconf/default.ini
detected include path: ['/usr/local/include', '/usr/lib/gcc/x86_64-redhat-linux/4.1.2/include', '/usr/include']
Traceback (most recent call last):
File "uwsgiconfig.py", line 1612, in <module>
build_uwsgi(uc, is_cflags, gcll=gcll)
File "uwsgiconfig.py", line 280, in build_uwsgi
gcc_list, cflags, ldflags, libs = uc.get_gcll()
File "uwsgiconfig.py", line 983, in get_gcll
elif int(k_minor) >= 25:
ValueError: invalid literal for int() with base 10: '32_1'

这个报错是因为python中int转换字符串的时候,默认转换的只能是数字,'32_1'显然不是一个数字,谁能想到从官网上下载的脚本居然有bug

肿木办呢?打开这个文件的源码,找到983行,代码为

        if timer_mode == 'auto':
if uwsgi_os == 'Linux':
k_all = uwsgi_os_k.split('.')
k_base = k_all[0]
k_major = k_all[1]
if len(k_all) > 2:
k_minor = k_all[2]
else:
k_minor =
if int(k_base) > 2:
timer_mode = 'timerfd'
elif int(k_minor) >= 25:
timer_mode = 'timerfd'
else:
timer_mode = 'none'

取的应该是版本号

# uname -a
Linux jiu_bu_gao_su_ni 2.6.32_1--- # SMP Mon Aug :: CST x86_64 x86_64 x86_64 GNU/Linux

这样在代码里强制加一个k_minor=32就可以了

        if timer_mode == 'auto':
if uwsgi_os == 'Linux':
k_all = uwsgi_os_k.split('.')
k_base = k_all[0]
k_major = k_all[1]
if len(k_all) > 2:
k_minor = k_all[2]
else:
k_minor = 0
k_minor = 32
if int(k_base) > 2:
timer_mode = 'timerfd'
elif int(k_minor) >= 25:
timer_mode = 'timerfd'
else:
timer_mode = 'none'

测试一下,安装成功

python uwsgiconfig.py --build

把同路径下生成的uwsgi拷贝到/usr/bin下或者/usr/sbin就可以了

uwsgi手动安装时报错ValueError: invalid literal for int() with base 10: '32_1'的更多相关文章

  1. celery ValueError: invalid literal for int() with base 10: '26379;sentinel'

    celery使用redis sentinel作为broker的时候,因为redis sentinel配置字符串格式解析报错 ValueError: invalid literal for int() ...

  2. Python中ValueError: invalid literal for int() with base 10 的实用解决办法

    爬虫代理IP由芝麻HTTP服务供应商提供今天在写爬虫程序的时候由于要翻页,做除法分页的时候出现了 totalCount = ' totalPage = int(totalCount)/20 Value ...

  3. python(ValueError: invalid literal for int() with base 10: 'abc' ‘1.0‘’’)强制类型转换

    int()函数只能转化数字组成的字符串,看例子: >>> a=' >>> int(a) 123 >>> b='abc' >>> ...

  4. ValueError: invalid literal for int() with base 10问题处理

    问题描述: 在用pthon写脚本得过程中,发生错误,ValueError: invalid literal for int() with base 10,这种错误是值得类型转换错误,int()函数是可 ...

  5. celery中配置redis密码时的ValueError: invalid literal for int() with base 10: 'xxxx'

    原配置: celery_broker = 'redis://:xxxx#xxxx@172.17.0.1:6379/0' # docker0 错误原因: 密码中不能有 # ? 等特殊字符 (无语O__O ...

  6. Python常见问题 - 写入数据到 excel 报 ValueError: invalid literal for int() with base 10 错误

    背景 在上写入数据到excel中,报了以下错误 出现原因 对于写入excel场景下出现该错误的话,很大概率是写入数据的单元格原本的数据格式有问题 解决方法 清理掉单元格的旧数据,然后再写入就可以了

  7. python 小数相加报错 invalid literal for int() with base 10

    for i in column1: x = int(i) s += xprint "sum:",s,"count:",len(column1)# round ( ...

  8. django报错invalid literal for int() with base 10: ''

    这种错误是因为模型类中某个字段的条件约束为int类型,但是给了一个字符串类型,所以报错,找到那个模型类的字段,并对应修改就好了.

  9. pythonerror ValueError:invalid literal for int() with base 10: '3.14'

    解释:对于int()来说,文本输入‘3.14’这个输入是无效的,原因是int类要求输入数字或者整数字符 解决:a= int(float(value)) 注:int本身是一个类,所以返回的是int类,i ...

随机推荐

  1. cgitb--CGI跟踪模块(简化异常调试)

    通过启动cgitb模块,可以在web浏览器窗口查看详细的编码异常信息,而不必不停地跳转到web服务器的日志屏幕查看,更方便的定位问题: 异常解决后需关闭CGI跟踪. 在CGI脚本最前面增加如下两行,启 ...

  2. EOF ---shell编程

    转自:http://blog.163.com/njut_wangjian/blog/static/1657964252013112152418345/ 在shell编程中,”EOF“通常与”<& ...

  3. Python zmail 模块

    zmail 是 python3 用来收发邮件的一个模块,用法参考: https://mp.weixin.qq.com/s?__biz=MzAxMjUyNDQ5OA==&mid=26535559 ...

  4. poj_2396 有上下界的网络流

    题目大意 一个mxn的矩阵,给出矩阵中每一行的和sh[1,2...m]以及每一列的数字的和目sv[1,2...n],以及矩阵中的一些元素的范围限制,比如a[1][2] > 1, a[2][3] ...

  5. Java中迭代器实现的原理

    一. 引言 迭代这个名词对于熟悉Java的人来说绝对不陌生.我们常常使用JDK提供的迭代接口进行java collection的遍历: Iterator it = list.iterator();wh ...

  6. Android长截屏-- ScrollView,ListView及RecyclerView截屏

    http://blog.csdn.net/wbwjx/article/details/46674157       Android长截屏-- ScrollView,ListView及RecyclerV ...

  7. vux组件绑定事件

    我一开始是这样绑定事件的,但是没有效果: <box gap="15px 45px"> <x-button plain type="primary&quo ...

  8. linux 中 ll 命令显示 的大小 是什么单位的啊?

    ll显示的是字节,可以使用-h参数来提高文件大小的可读性,另外ll不是命令,是ls -l的别名 ls -al   是以字节单位显示文件或者文件夹大小: 字节b,千字节kb, 1G=1024M=1024 ...

  9. SpringMVC XXX-servlet.xml ApplicationContext.xml

    因为直接使用了SpringMVC,所以之前一直不明白xxx-servlet.xml和applicationContext.xml是如何区别的,其实如果直接使用SpringMVC是可以不添加applic ...

  10. 2-sat+二分搜索hdu(3622)

    hdu3622 Bomb Game Time Limit: 10000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...