rebuild uwsgi with pcre support

匿名 (未验证) 提交于 2019-12-03 02:14:01

问题:

when running uwsgi i get the following message:

!!! no internal routing support, rebuild with pcre support !!! 

I already have installed pcre (I think) with the following command:

Sudo apt-get install libpcre3 libpcre3-dev 

My question is: Why am I still getting this message even after I have installed the pcre package and if I need to reinstall uwsgi and activate pcre how do I do it?

Also, does internal routing matter? I assume it does or else the makers of uwsgi wouldn't have made the message come up. I am running Ubuntu 12.04 LTS.

Thanks for the help!

回答1:

pip install uwsgi -I 

Won't recompile the uwsgi binary, it just reinstalls the python egg. You need to rebuild the uwsgi binary with the pcre libraries.

sudo apt-get install libpcre3 libpcre3-dev 

I think the easiest way is just to uninstall uwsgi and then run the pip installer again.

pip uninstall uwsgi sudo apt-get remove uwsgi 

then

pip install uwsgi 

you should see pip run the setup.py script and a bunch of compiler messages. The last message should show you something like this:

################# uWSGI configuration #################  pcre = True kernel = Linux malloc = libc execinfo = False ifaddrs = True ssl = True zlib = True locking = pthread_mutex plugin_dir = . timer = timerfd yaml = embedded json = False filemonitor = inotify routing = True debug = False capabilities = False xml = libxml2 event = epoll  ############## end of uWSGI configuration ############# 

notice how pcre = true now



回答2:

pip install uwsgi -I --no-cache-dir

It reinstalls (-I) as @leech said, but ignores the compiled cache (--no-cache-dir) and recompiles the thing with the new libs.



回答3:

pip uninstall uwsgi  sudo apt-get install libpcre3 libpcre3-dev  pip install uwsgi 

I solved it with the above commands.



回答4:

Did you try:

pip install uwsgi -I  

The -I flag will force it to reinstall



回答5:

If you have tried all above but it is still have the same error and with the below ones, please check your command parameters, particular the --http-socket /path/to/your.sock. That is the path = '/path/to' must be existed

thunder lock: disabled (you can enable it with --thunder-lock) bind(): No such file or directory [core/socket.c line 230] 


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!