Ubuntu使用apt时提示”E: You must put some ‘source’ URIs in your sources.list”、Ubuntu18.04安装Openssl-1.
前言
然后按照
python系列(不具有任何参考性):— no python application found, check your startup logs for errors
四. BUG之路2--ubuntu安装uwsgi测试报错:failed to open python file test.py
把uwsgi
卸载了,准备pip3 install uwsgi
报错
ImportError: libffi.so.6: cannot open shared object file: No such file or directory
按照
python系列:报错问题解决:ImportError: libffi.so.6: cannot open shared object file: No such file or directory
一 .报错问题解决:ImportError: libffi.so.6: cannot open shared object file: No such file or directory
解决了问题
继续pip3 install uwsgi
一. Ubuntu 安装 uWSGI
教程
uWSGI官方网址:
https://pypi.org/project/uWSGI/
使用如下命令安装:
pip install uWSGI
报如下错:
Collecting uWSGI
Using cached https://files.pythonhosted.org/packages/e7/1e/3dcca007f974fe4eb369bf1b8629d5e342bb3055e2001b2e5340aaefae7a/uwsgi-2.0.18.tar.gz
Building wheels for collected packages: uWSGI
Running setup.py bdist_wheel for uWSGI ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-rdpk4gyl/uWSGI/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/tmpt5s5icgdpip-wheel- --python-tag cp36:
/usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'descriptions'
warnings.warn(msg)
running bdist_wheel
running build
running build_py
creating build
creating build/lib
copying uwsgidecorators.py -> build/lib
installing to build/bdist.linux-x86_64/wheel
running install
using profile: buildconf/default.ini
detected include path: ['/usr/lib/gcc/x86_64-linux-gnu/8/include', '/usr/local/include', '/usr/lib/gcc/x86_64-linux-gnu/8/include-fixed', '/usr/include/x86_64-linux-gnu', '/usr/include']
Patching "bin_name" to properly install_scripts dir
detected CPU cores: 1
configured CFLAGS: -O2 -I. -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -DUWSGI_HAS_IFADDRS -DUWSGI_ZLIB -DUWSGI_LOCK_USE_MUTEX -DUWSGI_EVENT_USE_EPOLL -DUWSGI_EVENT_TIMER_USE_TIMERFD -DUWSGI_EVENT_FILEMONITOR_USE_INOTIFY -DUWSGI_PCRE -DUWSGI_ROUTING -DUWSGI_UUID -DUWSGI_VERSION="\"2.0.18\"" -DUWSGI_VERSION_BASE="2" -DUWSGI_VERSION_MAJOR="0" -DUWSGI_VERSION_MINOR="18" -DUWSGI_VERSION_REVISION="0" -DUWSGI_VERSION_CUSTOM="\"\"" -DUWSGI_YAML -DUWSGI_SSL -I/usr/include/libxml2 -DUWSGI_XML -DUWSGI_XML_LIBXML2 -DUWSGI_PLUGIN_DIR="\".\"" -DUWSGI_DECLARE_EMBEDDED_PLUGINS="UDEP(python);UDEP(gevent);UDEP(ping);UDEP(cache);UDEP(nagios);UDEP(rrdtool);UDEP(carbon);UDEP(rpc);UDEP(corerouter);UDEP(fastrouter);UDEP(http);UDEP(ugreen);UDEP(signal);UDEP(syslog);UDEP(rsyslog);UDEP(logsocket);UDEP(router_uwsgi);UDEP(router_redirect);UDEP(router_basicauth);UDEP(zergpool);UDEP(redislog);UDEP(mongodblog);UDEP(router_rewrite);UDEP(router_http);UDEP(logfile);UDEP(router_cache);UDEP(rawrouter);UDEP(router_static);UDEP(sslrouter);UDEP(spooler);UDEP(cheaper_busyness);UDEP(symcall);UDEP(transformation_tofile);UDEP(transformation_gzip);UDEP(transformation_chunked);UDEP(transformation_offload);UDEP(router_memcached);UDEP(router_redis);UDEP(router_hash);UDEP(router_expires);UDEP(router_metrics);UDEP(transformation_template);UDEP(stats_pusher_socket);" -DUWSGI_LOAD_EMBEDDED_PLUGINS="ULEP(python);ULEP(gevent);ULEP(ping);ULEP(cache);ULEP(nagios);ULEP(rrdtool);ULEP(carbon);ULEP(rpc);ULEP(corerouter);ULEP(fastrouter);ULEP(http);ULEP(ugreen);ULEP(signal);ULEP(syslog);ULEP(rsyslog);ULEP(logsocket);ULEP(router_uwsgi);ULEP(router_redirect);ULEP(router_basicauth);ULEP(zergpool);ULEP(redislog);ULEP(mongodblog);ULEP(router_rewrite);ULEP(router_http);ULEP(logfile);ULEP(router_cache);ULEP(rawrouter);ULEP(router_static);ULEP(sslrouter);ULEP(spooler);ULEP(cheaper_busyness);ULEP(symcall);ULEP(transformation_tofile);ULEP(transformation_gzip);ULEP(transformation_chunked);ULEP(transformation_offload);ULEP(router_memcached);ULEP(router_redis);ULEP(router_hash);ULEP(router_expires);ULEP(router_metrics);ULEP(transformation_template);ULEP(stats_pusher_socket);"
*** uWSGI compiling server core ***
[x86_64-linux-gnu-gcc -pthread] core/utils.o
[x86_64-linux-gnu-gcc -pthread] core/protocol.o
[x86_64-linux-gnu-gcc -pthread] core/socket.o
[x86_64-linux-gnu-gcc -pthread] core/logging.o
[x86_64-linux-gnu-gcc -pthread] core/master.o
[x86_64-linux-gnu-gcc -pthread] core/master_utils.o
[x86_64-linux-gnu-gcc -pthread] core/emperor.o
[x86_64-linux-gnu-gcc -pthread] core/notify.o
[x86_64-linux-gnu-gcc -pthread] core/mule.o
[x86_64-linux-gnu-gcc -pthread] core/subscription.o
[x86_64-linux-gnu-gcc -pthread] core/stats.o
[x86_64-linux-gnu-gcc -pthread] core/sendfile.o
[x86_64-linux-gnu-gcc -pthread] core/async.o
[x86_64-linux-gnu-gcc -pthread] core/master_checks.o
[x86_64-linux-gnu-gcc -pthread] core/fifo.o
[x86_64-linux-gnu-gcc -pthread] core/offload.o
[x86_64-linux-gnu-gcc -pthread] core/io.o
[x86_64-linux-gnu-gcc -pthread] core/static.o
[x86_64-linux-gnu-gcc -pthread] core/websockets.o
[x86_64-linux-gnu-gcc -pthread] core/spooler.o
[x86_64-linux-gnu-gcc -pthread] core/snmp.o
[x86_64-linux-gnu-gcc -pthread] core/exceptions.o
[x86_64-linux-gnu-gcc -pthread] core/config.o
[x86_64-linux-gnu-gcc -pthread] core/setup_utils.o
[x86_64-linux-gnu-gcc -pthread] core/clock.o
[x86_64-linux-gnu-gcc -pthread] core/init.o
[x86_64-linux-gnu-gcc -pthread] core/buffer.o
[x86_64-linux-gnu-gcc -pthread] core/reader.o
[x86_64-linux-gnu-gcc -pthread] core/writer.o
[x86_64-linux-gnu-gcc -pthread] core/alarm.o
[x86_64-linux-gnu-gcc -pthread] core/cron.o
[x86_64-linux-gnu-gcc -pthread] core/hooks.o
[x86_64-linux-gnu-gcc -pthread] core/plugins.o
[x86_64-linux-gnu-gcc -pthread] core/lock.o
[x86_64-linux-gnu-gcc -pthread] core/cache.o
[x86_64-linux-gnu-gcc -pthread] core/daemons.o
[x86_64-linux-gnu-gcc -pthread] core/errors.o
[x86_64-linux-gnu-gcc -pthread] core/hash.o
[x86_64-linux-gnu-gcc -pthread] core/master_events.o
[x86_64-linux-gnu-gcc -pthread] core/chunked.o
[x86_64-linux-gnu-gcc -pthread] core/queue.o
[x86_64-linux-gnu-gcc -pthread] core/event.o
[x86_64-linux-gnu-gcc -pthread] core/signal.o
[x86_64-linux-gnu-gcc -pthread] core/strings.o
[x86_64-linux-gnu-gcc -pthread] core/progress.o
[x86_64-linux-gnu-gcc -pthread] core/timebomb.o
[x86_64-linux-gnu-gcc -pthread] core/ini.o
[x86_64-linux-gnu-gcc -pthread] core/fsmon.o
[x86_64-linux-gnu-gcc -pthread] core/mount.o
[x86_64-linux-gnu-gcc -pthread] core/metrics.o
[x86_64-linux-gnu-gcc -pthread] core/plugins_builder.o
[x86_64-linux-gnu-gcc -pthread] core/sharedarea.o
[x86_64-linux-gnu-gcc -pthread] core/rpc.o
[x86_64-linux-gnu-gcc -pthread] core/gateway.o
[x86_64-linux-gnu-gcc -pthread] core/loop.o
[x86_64-linux-gnu-gcc -pthread] core/cookie.o
[x86_64-linux-gnu-gcc -pthread] core/querystring.o
[x86_64-linux-gnu-gcc -pthread] core/rb_timers.o
[x86_64-linux-gnu-gcc -pthread] core/transformations.o
[x86_64-linux-gnu-gcc -pthread] core/uwsgi.o
[x86_64-linux-gnu-gcc -pthread] proto/base.o
[x86_64-linux-gnu-gcc -pthread] proto/uwsgi.o
[x86_64-linux-gnu-gcc -pthread] proto/http.o
[x86_64-linux-gnu-gcc -pthread] proto/fastcgi.o
[x86_64-linux-gnu-gcc -pthread] proto/scgi.o
[x86_64-linux-gnu-gcc -pthread] proto/puwsgi.o
[x86_64-linux-gnu-gcc -pthread] lib/linux_ns.o
[x86_64-linux-gnu-gcc -pthread] core/zlib.o
[x86_64-linux-gnu-gcc -pthread] core/regexp.o
[x86_64-linux-gnu-gcc -pthread] core/routing.o
[x86_64-linux-gnu-gcc -pthread] core/yaml.o
[x86_64-linux-gnu-gcc -pthread] core/ssl.o
[x86_64-linux-gnu-gcc -pthread] core/legion.o
[x86_64-linux-gnu-gcc -pthread] core/xmlconf.o
[x86_64-linux-gnu-gcc -pthread] core/dot_h.o
[x86_64-linux-gnu-gcc -pthread] core/config_py.o
*** uWSGI compiling embedded plugins ***
[x86_64-linux-gnu-gcc -pthread] plugins/python/python_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/pyutils.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/pyloader.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/wsgi_handlers.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/wsgi_headers.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/wsgi_subhandler.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/web3_subhandler.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/pump_subhandler.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/gil.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/uwsgi_pymodule.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/profiler.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/symimporter.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/tracebacker.o
[x86_64-linux-gnu-gcc -pthread] plugins/python/raw.o
[x86_64-linux-gnu-gcc -pthread] plugins/gevent/gevent.o
[x86_64-linux-gnu-gcc -pthread] plugins/gevent/hooks.o
[x86_64-linux-gnu-gcc -pthread] plugins/ping/ping_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/cache/cache.o
[x86_64-linux-gnu-gcc -pthread] plugins/nagios/nagios.o
[x86_64-linux-gnu-gcc -pthread] plugins/rrdtool/rrdtool.o
[x86_64-linux-gnu-gcc -pthread] plugins/carbon/carbon.o
[x86_64-linux-gnu-gcc -pthread] plugins/rpc/rpc_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/corerouter/cr_common.o
[x86_64-linux-gnu-gcc -pthread] plugins/corerouter/cr_map.o
[x86_64-linux-gnu-gcc -pthread] plugins/corerouter/corerouter.o
[x86_64-linux-gnu-gcc -pthread] plugins/fastrouter/fastrouter.o
[x86_64-linux-gnu-gcc -pthread] plugins/http/http.o
[x86_64-linux-gnu-gcc -pthread] plugins/http/keepalive.o
[x86_64-linux-gnu-gcc -pthread] plugins/http/https.o
[x86_64-linux-gnu-gcc -pthread] plugins/http/spdy3.o
[x86_64-linux-gnu-gcc -pthread] plugins/ugreen/ugreen.o
[x86_64-linux-gnu-gcc -pthread] plugins/signal/signal_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/syslog/syslog_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/rsyslog/rsyslog_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/logsocket/logsocket_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_uwsgi/router_uwsgi.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_redirect/router_redirect.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_basicauth/router_basicauth.o
[x86_64-linux-gnu-gcc -pthread] plugins/zergpool/zergpool.o
[x86_64-linux-gnu-gcc -pthread] plugins/redislog/redislog_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/mongodblog/mongodblog_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_rewrite/router_rewrite.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_http/router_http.o
[x86_64-linux-gnu-gcc -pthread] plugins/logfile/logfile.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_cache/router_cache.o
[x86_64-linux-gnu-gcc -pthread] plugins/rawrouter/rawrouter.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_static/router_static.o
[x86_64-linux-gnu-gcc -pthread] plugins/sslrouter/sslrouter.o
[x86_64-linux-gnu-gcc -pthread] plugins/spooler/spooler_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/cheaper_busyness/cheaper_busyness.o
[x86_64-linux-gnu-gcc -pthread] plugins/symcall/symcall_plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/transformation_tofile/tofile.o
[x86_64-linux-gnu-gcc -pthread] plugins/transformation_gzip/gzip.o
[x86_64-linux-gnu-gcc -pthread] plugins/transformation_chunked/chunked.o
[x86_64-linux-gnu-gcc -pthread] plugins/transformation_offload/offload.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_memcached/router_memcached.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_redis/router_redis.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_hash/router_hash.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_expires/expires.o
[x86_64-linux-gnu-gcc -pthread] plugins/router_metrics/plugin.o
[x86_64-linux-gnu-gcc -pthread] plugins/transformation_template/tt.o
[x86_64-linux-gnu-gcc -pthread] plugins/stats_pusher_socket/plugin.o
*** uWSGI linking ***
x86_64-linux-gnu-gcc -pthread -o build/bdist.linux-x86_64/wheel/uWSGI-2.0.18.data/scripts/uwsgi -L/usr/lib -Wl,-rpath,/usr/lib core/utils.o core/protocol.o core/socket.o core/logging.o core/master.o core/master_utils.o core/emperor.o core/notify.o core/mule.o core/subscription.o core/stats.o core/sendfile.o core/async.o core/master_checks.o core/fifo.o core/offload.o core/io.o core/static.o core/websockets.o core/spooler.o core/snmp.o core/exceptions.o core/config.o core/setup_utils.o core/clock.o core/init.o core/buffer.o core/reader.o core/writer.o core/alarm.o core/cron.o core/hooks.o core/plugins.o core/lock.o core/cache.o core/daemons.o core/errors.o core/hash.o core/master_events.o core/chunked.o core/queue.o core/event.o core/signal.o core/strings.o core/progress.o core/timebomb.o core/ini.o core/fsmon.o core/mount.o core/metrics.o core/plugins_builder.o core/sharedarea.o core/rpc.o core/gateway.o core/loop.o core/cookie.o core/querystring.o core/rb_timers.o core/transformations.o core/uwsgi.o proto/base.o proto/uwsgi.o proto/http.o proto/fastcgi.o proto/scgi.o proto/puwsgi.o lib/linux_ns.o core/zlib.o core/regexp.o core/routing.o core/yaml.o core/ssl.o core/legion.o core/xmlconf.o core/dot_h.o core/config_py.o plugins/python/python_plugin.o plugins/python/pyutils.o plugins/python/pyloader.o plugins/python/wsgi_handlers.o plugins/python/wsgi_headers.o plugins/python/wsgi_subhandler.o plugins/python/web3_subhandler.o plugins/python/pump_subhandler.o plugins/python/gil.o plugins/python/uwsgi_pymodule.o plugins/python/profiler.o plugins/python/symimporter.o plugins/python/tracebacker.o plugins/python/raw.o plugins/gevent/gevent.o plugins/gevent/hooks.o plugins/ping/ping_plugin.o plugins/cache/cache.o plugins/nagios/nagios.o plugins/rrdtool/rrdtool.o plugins/carbon/carbon.o plugins/rpc/rpc_plugin.o plugins/corerouter/cr_common.o plugins/corerouter/cr_map.o plugins/corerouter/corerouter.o plugins/fastrouter/fastrouter.o plugins/http/http.o plugins/http/keepalive.o plugins/http/https.o plugins/http/spdy3.o plugins/ugreen/ugreen.o plugins/signal/signal_plugin.o plugins/syslog/syslog_plugin.o plugins/rsyslog/rsyslog_plugin.o plugins/logsocket/logsocket_plugin.o plugins/router_uwsgi/router_uwsgi.o plugins/router_redirect/router_redirect.o plugins/router_basicauth/router_basicauth.o plugins/zergpool/zergpool.o plugins/redislog/redislog_plugin.o plugins/mongodblog/mongodblog_plugin.o plugins/router_rewrite/router_rewrite.o plugins/router_http/router_http.o plugins/logfile/logfile.o plugins/router_cache/router_cache.o plugins/rawrouter/rawrouter.o plugins/router_static/router_static.o plugins/sslrouter/sslrouter.o plugins/spooler/spooler_plugin.o plugins/cheaper_busyness/cheaper_busyness.o plugins/symcall/symcall_plugin.o plugins/transformation_tofile/tofile.o plugins/transformation_gzip/gzip.o plugins/transformation_chunked/chunked.o plugins/transformation_offload/offload.o plugins/router_memcached/router_memcached.o plugins/router_redis/router_redis.o plugins/router_hash/router_hash.o plugins/router_expires/expires.o plugins/router_metrics/plugin.o plugins/transformation_template/tt.o plugins/stats_pusher_socket/plugin.o -lpthread -lm -rdynamic -ldl -lz -lpcre -luuid -lssl -lcrypto -lxml2 -lpthread -ldl -lutil -lm -lpython3.6m -lcrypt
/usr/bin/ld: core/subscription.o: in function `uwsgi_remove_subscribe_node':
subscription.c:(.text+0x945): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: subscription.c:(.text+0x979): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: core/subscription.o: in function `subscription_new_sign_ctx':
subscription.c:(.text+0x1419): undefined reference to `EVP_MD_CTX_new'
/usr/bin/ld: subscription.c:(.text+0x1496): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: core/ssl.o: in function `uwsgi_ssl_init':
ssl.c:(.text+0xc9): undefined reference to `OPENSSL_init_ssl'
/usr/bin/ld: ssl.c:(.text+0xd5): undefined reference to `OPENSSL_init_ssl'
/usr/bin/ld: ssl.c:(.text+0xe1): undefined reference to `OPENSSL_init_crypto'
/usr/bin/ld: core/ssl.o: in function `uwsgi_ssl_new_server_context':
ssl.c:(.text+0x24f): undefined reference to `TLS_server_method'
/usr/bin/ld: ssl.c:(.text+0x331): undefined reference to `SSL_CTX_set_options'
/usr/bin/ld: ssl.c:(.text+0x36d): undefined reference to `SSL_CTX_set_options'
/usr/bin/ld: ssl.c:(.text+0x556): undefined reference to `SSL_CTX_set_options'
/usr/bin/ld: core/ssl.o: in function `uwsgi_rsa_sign':
ssl.c:(.text+0x843): undefined reference to `EVP_MD_CTX_new'
/usr/bin/ld: ssl.c:(.text+0x8d3): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: ssl.c:(.text+0xa09): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: core/ssl.o: in function `uwsgi_sni_cb':
ssl.c:(.text+0xf7b): undefined reference to `SSL_CTX_get_options'
/usr/bin/ld: ssl.c:(.text+0xf86): undefined reference to `SSL_set_options'
collect2: error: ld returned 1 exit status
*** error linking uWSGI ***
----------------------------------------
Failed building wheel for uWSGI
Running setup.py clean for uWSGI
Failed to build uWSGI
Installing collected packages: uWSGI
Running setup.py install for uWSGI ... error
Complete output from command /usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-rdpk4gyl/uWSGI/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-wsfcsmtn-record/install-record.txt --single-version-externally-managed --compile:
/usr/lib/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: 'descriptions'
warnings.warn(msg)
running install
using profile: buildconf/default.ini
detected include path: ['/usr/lib/gcc/x86_64-linux-gnu/8/include', '/usr/local/include', '/usr/lib/gcc/x86_64-linux-gnu/8/include-fixed', '/usr/include/x86_64-linux-gnu', '/usr/include']
Patching "bin_name" to properly install_scripts dir
detected CPU cores: 1
configured CFLAGS: -O2 -I. -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -DUWSGI_HAS_IFADDRS -DUWSGI_ZLIB -DUWSGI_LOCK_USE_MUTEX -DUWSGI_EVENT_USE_EPOLL -DUWSGI_EVENT_TIMER_USE_TIMERFD -DUWSGI_EVENT_FILEMONITOR_USE_INOTIFY -DUWSGI_PCRE -DUWSGI_ROUTING -DUWSGI_UUID -DUWSGI_VERSION="\"2.0.18\"" -DUWSGI_VERSION_BASE="2" -DUWSGI_VERSION_MAJOR="0" -DUWSGI_VERSION_MINOR="18" -DUWSGI_VERSION_REVISION="0" -DUWSGI_VERSION_CUSTOM="\"\"" -DUWSGI_YAML -DUWSGI_SSL -I/usr/include/libxml2 -DUWSGI_XML -DUWSGI_XML_LIBXML2 -DUWSGI_PLUGIN_DIR="\".\"" -DUWSGI_DECLARE_EMBEDDED_PLUGINS="UDEP(python);UDEP(gevent);UDEP(ping);UDEP(cache);UDEP(nagios);UDEP(rrdtool);UDEP(carbon);UDEP(rpc);UDEP(corerouter);UDEP(fastrouter);UDEP(http);UDEP(ugreen);UDEP(signal);UDEP(syslog);UDEP(rsyslog);UDEP(logsocket);UDEP(router_uwsgi);UDEP(router_redirect);UDEP(router_basicauth);UDEP(zergpool);UDEP(redislog);UDEP(mongodblog);UDEP(router_rewrite);UDEP(router_http);UDEP(logfile);UDEP(router_cache);UDEP(rawrouter);UDEP(router_static);UDEP(sslrouter);UDEP(spooler);UDEP(cheaper_busyness);UDEP(symcall);UDEP(transformation_tofile);UDEP(transformation_gzip);UDEP(transformation_chunked);UDEP(transformation_offload);UDEP(router_memcached);UDEP(router_redis);UDEP(router_hash);UDEP(router_expires);UDEP(router_metrics);UDEP(transformation_template);UDEP(stats_pusher_socket);" -DUWSGI_LOAD_EMBEDDED_PLUGINS="ULEP(python);ULEP(gevent);ULEP(ping);ULEP(cache);ULEP(nagios);ULEP(rrdtool);ULEP(carbon);ULEP(rpc);ULEP(corerouter);ULEP(fastrouter);ULEP(http);ULEP(ugreen);ULEP(signal);ULEP(syslog);ULEP(rsyslog);ULEP(logsocket);ULEP(router_uwsgi);ULEP(router_redirect);ULEP(router_basicauth);ULEP(zergpool);ULEP(redislog);ULEP(mongodblog);ULEP(router_rewrite);ULEP(router_http);ULEP(logfile);ULEP(router_cache);ULEP(rawrouter);ULEP(router_static);ULEP(sslrouter);ULEP(spooler);ULEP(cheaper_busyness);ULEP(symcall);ULEP(transformation_tofile);ULEP(transformation_gzip);ULEP(transformation_chunked);ULEP(transformation_offload);ULEP(router_memcached);ULEP(router_redis);ULEP(router_hash);ULEP(router_expires);ULEP(router_metrics);ULEP(transformation_template);ULEP(stats_pusher_socket);"
*** uWSGI compiling server core ***
core/utils.o is up to date
core/protocol.o is up to date
core/socket.o is up to date
core/logging.o is up to date
core/master.o is up to date
core/master_utils.o is up to date
core/emperor.o is up to date
core/notify.o is up to date
core/mule.o is up to date
core/subscription.o is up to date
core/stats.o is up to date
core/sendfile.o is up to date
core/async.o is up to date
core/master_checks.o is up to date
core/fifo.o is up to date
core/offload.o is up to date
core/io.o is up to date
core/static.o is up to date
core/websockets.o is up to date
core/spooler.o is up to date
core/snmp.o is up to date
core/exceptions.o is up to date
core/config.o is up to date
core/setup_utils.o is up to date
core/clock.o is up to date
core/init.o is up to date
core/buffer.o is up to date
core/reader.o is up to date
core/writer.o is up to date
core/alarm.o is up to date
core/cron.o is up to date
core/hooks.o is up to date
core/plugins.o is up to date
core/lock.o is up to date
core/cache.o is up to date
core/daemons.o is up to date
core/errors.o is up to date
core/hash.o is up to date
core/master_events.o is up to date
core/chunked.o is up to date
core/queue.o is up to date
core/event.o is up to date
core/signal.o is up to date
core/strings.o is up to date
core/progress.o is up to date
core/timebomb.o is up to date
core/ini.o is up to date
core/fsmon.o is up to date
core/mount.o is up to date
core/metrics.o is up to date
core/plugins_builder.o is up to date
core/sharedarea.o is up to date
core/rpc.o is up to date
core/gateway.o is up to date
core/loop.o is up to date
core/cookie.o is up to date
core/querystring.o is up to date
core/rb_timers.o is up to date
core/transformations.o is up to date
core/uwsgi.o is up to date
proto/base.o is up to date
proto/uwsgi.o is up to date
proto/http.o is up to date
proto/fastcgi.o is up to date
proto/scgi.o is up to date
proto/puwsgi.o is up to date
lib/linux_ns.o is up to date
core/zlib.o is up to date
core/regexp.o is up to date
core/routing.o is up to date
core/yaml.o is up to date
core/ssl.o is up to date
core/legion.o is up to date
core/xmlconf.o is up to date
[x86_64-linux-gnu-gcc -pthread] core/dot_h.o
[x86_64-linux-gnu-gcc -pthread] core/config_py.o
*** uWSGI compiling embedded plugins ***
plugins/python/python_plugin.o is up to date
plugins/python/pyutils.o is up to date
plugins/python/pyloader.o is up to date
plugins/python/wsgi_handlers.o is up to date
plugins/python/wsgi_headers.o is up to date
plugins/python/wsgi_subhandler.o is up to date
plugins/python/web3_subhandler.o is up to date
plugins/python/pump_subhandler.o is up to date
plugins/python/gil.o is up to date
plugins/python/uwsgi_pymodule.o is up to date
plugins/python/profiler.o is up to date
plugins/python/symimporter.o is up to date
plugins/python/tracebacker.o is up to date
plugins/python/raw.o is up to date
plugins/gevent/gevent.o is up to date
plugins/gevent/hooks.o is up to date
plugins/ping/ping_plugin.o is up to date
plugins/cache/cache.o is up to date
plugins/nagios/nagios.o is up to date
plugins/rrdtool/rrdtool.o is up to date
plugins/carbon/carbon.o is up to date
plugins/rpc/rpc_plugin.o is up to date
plugins/corerouter/cr_common.o is up to date
plugins/corerouter/cr_map.o is up to date
plugins/corerouter/corerouter.o is up to date
plugins/fastrouter/fastrouter.o is up to date
plugins/http/http.o is up to date
plugins/http/keepalive.o is up to date
plugins/http/https.o is up to date
plugins/http/spdy3.o is up to date
plugins/ugreen/ugreen.o is up to date
plugins/signal/signal_plugin.o is up to date
plugins/syslog/syslog_plugin.o is up to date
plugins/rsyslog/rsyslog_plugin.o is up to date
plugins/logsocket/logsocket_plugin.o is up to date
plugins/router_uwsgi/router_uwsgi.o is up to date
plugins/router_redirect/router_redirect.o is up to date
plugins/router_basicauth/router_basicauth.o is up to date
plugins/zergpool/zergpool.o is up to date
plugins/redislog/redislog_plugin.o is up to date
plugins/mongodblog/mongodblog_plugin.o is up to date
plugins/router_rewrite/router_rewrite.o is up to date
plugins/router_http/router_http.o is up to date
plugins/logfile/logfile.o is up to date
plugins/router_cache/router_cache.o is up to date
plugins/rawrouter/rawrouter.o is up to date
plugins/router_static/router_static.o is up to date
plugins/sslrouter/sslrouter.o is up to date
plugins/spooler/spooler_plugin.o is up to date
plugins/cheaper_busyness/cheaper_busyness.o is up to date
plugins/symcall/symcall_plugin.o is up to date
plugins/transformation_tofile/tofile.o is up to date
plugins/transformation_gzip/gzip.o is up to date
plugins/transformation_chunked/chunked.o is up to date
plugins/transformation_offload/offload.o is up to date
plugins/router_memcached/router_memcached.o is up to date
plugins/router_redis/router_redis.o is up to date
plugins/router_hash/router_hash.o is up to date
plugins/router_expires/expires.o is up to date
plugins/router_metrics/plugin.o is up to date
plugins/transformation_template/tt.o is up to date
plugins/stats_pusher_socket/plugin.o is up to date
*** uWSGI linking ***
x86_64-linux-gnu-gcc -pthread -o /usr/local/bin/uwsgi -L/usr/lib -Wl,-rpath,/usr/lib core/utils.o core/protocol.o core/socket.o core/logging.o core/master.o core/master_utils.o core/emperor.o core/notify.o core/mule.o core/subscription.o core/stats.o core/sendfile.o core/async.o core/master_checks.o core/fifo.o core/offload.o core/io.o core/static.o core/websockets.o core/spooler.o core/snmp.o core/exceptions.o core/config.o core/setup_utils.o core/clock.o core/init.o core/buffer.o core/reader.o core/writer.o core/alarm.o core/cron.o core/hooks.o core/plugins.o core/lock.o core/cache.o core/daemons.o core/errors.o core/hash.o core/master_events.o core/chunked.o core/queue.o core/event.o core/signal.o core/strings.o core/progress.o core/timebomb.o core/ini.o core/fsmon.o core/mount.o core/metrics.o core/plugins_builder.o core/sharedarea.o core/rpc.o core/gateway.o core/loop.o core/cookie.o core/querystring.o core/rb_timers.o core/transformations.o core/uwsgi.o proto/base.o proto/uwsgi.o proto/http.o proto/fastcgi.o proto/scgi.o proto/puwsgi.o lib/linux_ns.o core/zlib.o core/regexp.o core/routing.o core/yaml.o core/ssl.o core/legion.o core/xmlconf.o core/dot_h.o core/config_py.o plugins/python/python_plugin.o plugins/python/pyutils.o plugins/python/pyloader.o plugins/python/wsgi_handlers.o plugins/python/wsgi_headers.o plugins/python/wsgi_subhandler.o plugins/python/web3_subhandler.o plugins/python/pump_subhandler.o plugins/python/gil.o plugins/python/uwsgi_pymodule.o plugins/python/profiler.o plugins/python/symimporter.o plugins/python/tracebacker.o plugins/python/raw.o plugins/gevent/gevent.o plugins/gevent/hooks.o plugins/ping/ping_plugin.o plugins/cache/cache.o plugins/nagios/nagios.o plugins/rrdtool/rrdtool.o plugins/carbon/carbon.o plugins/rpc/rpc_plugin.o plugins/corerouter/cr_common.o plugins/corerouter/cr_map.o plugins/corerouter/corerouter.o plugins/fastrouter/fastrouter.o plugins/http/http.o plugins/http/keepalive.o plugins/http/https.o plugins/http/spdy3.o plugins/ugreen/ugreen.o plugins/signal/signal_plugin.o plugins/syslog/syslog_plugin.o plugins/rsyslog/rsyslog_plugin.o plugins/logsocket/logsocket_plugin.o plugins/router_uwsgi/router_uwsgi.o plugins/router_redirect/router_redirect.o plugins/router_basicauth/router_basicauth.o plugins/zergpool/zergpool.o plugins/redislog/redislog_plugin.o plugins/mongodblog/mongodblog_plugin.o plugins/router_rewrite/router_rewrite.o plugins/router_http/router_http.o plugins/logfile/logfile.o plugins/router_cache/router_cache.o plugins/rawrouter/rawrouter.o plugins/router_static/router_static.o plugins/sslrouter/sslrouter.o plugins/spooler/spooler_plugin.o plugins/cheaper_busyness/cheaper_busyness.o plugins/symcall/symcall_plugin.o plugins/transformation_tofile/tofile.o plugins/transformation_gzip/gzip.o plugins/transformation_chunked/chunked.o plugins/transformation_offload/offload.o plugins/router_memcached/router_memcached.o plugins/router_redis/router_redis.o plugins/router_hash/router_hash.o plugins/router_expires/expires.o plugins/router_metrics/plugin.o plugins/transformation_template/tt.o plugins/stats_pusher_socket/plugin.o -lpthread -lm -rdynamic -ldl -lz -lpcre -luuid -lssl -lcrypto -lxml2 -lpthread -ldl -lutil -lm -lpython3.6m -lcrypt
/usr/bin/ld: core/subscription.o: in function `uwsgi_remove_subscribe_node':
subscription.c:(.text+0x945): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: subscription.c:(.text+0x979): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: core/subscription.o: in function `subscription_new_sign_ctx':
subscription.c:(.text+0x1419): undefined reference to `EVP_MD_CTX_new'
/usr/bin/ld: subscription.c:(.text+0x1496): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: core/ssl.o: in function `uwsgi_ssl_init':
ssl.c:(.text+0xc9): undefined reference to `OPENSSL_init_ssl'
/usr/bin/ld: ssl.c:(.text+0xd5): undefined reference to `OPENSSL_init_ssl'
/usr/bin/ld: ssl.c:(.text+0xe1): undefined reference to `OPENSSL_init_crypto'
/usr/bin/ld: core/ssl.o: in function `uwsgi_ssl_new_server_context':
ssl.c:(.text+0x24f): undefined reference to `TLS_server_method'
/usr/bin/ld: ssl.c:(.text+0x331): undefined reference to `SSL_CTX_set_options'
/usr/bin/ld: ssl.c:(.text+0x36d): undefined reference to `SSL_CTX_set_options'
/usr/bin/ld: ssl.c:(.text+0x556): undefined reference to `SSL_CTX_set_options'
/usr/bin/ld: core/ssl.o: in function `uwsgi_rsa_sign':
ssl.c:(.text+0x843): undefined reference to `EVP_MD_CTX_new'
/usr/bin/ld: ssl.c:(.text+0x8d3): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: ssl.c:(.text+0xa09): undefined reference to `EVP_MD_CTX_free'
/usr/bin/ld: core/ssl.o: in function `uwsgi_sni_cb':
ssl.c:(.text+0xf7b): undefined reference to `SSL_CTX_get_options'
/usr/bin/ld: ssl.c:(.text+0xf86): undefined reference to `SSL_set_options'
collect2: error: ld returned 1 exit status
*** error linking uWSGI ***
----------------------------------------
Command "/usr/bin/python3 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-rdpk4gyl/uWSGI/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /tmp/pip-wsfcsmtn-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /tmp/pip-build-rdpk4gyl/uWSGI/
网上找了各种解决方法都没成功。
最后使用 anaconda3 成功安装。
anaconda3 下载地址:
https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/?C=M&O=A
下载自己对应的 .sh 并执行,按提示直至完成。
新开一个终端,并加入环境变量:
export PATH=~/anaconda3/bin:$PATH
检查是否安装成功:
conda -V
conda 4.7.12
安装 uwsgi:
conda config --add channels conda-forge
conda install uwsgi
安装libiconv
conda install -c conda-forge libiconv
至此成功,测试一下:
创建 test.py :
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"Hello World"]
执行:
uwsgi --http :9090 --wsgi-file test.py
此时应该是成功的。
后来发现pip安装不上是openssl版本的问题,ubuntu通过apt安装的openssl版本较旧,自己去官网下载最新的源码,升级openssl后再用pip安装就成功了。
升级openssl的教程如下:
https://www.cnblogs.com/jsjliyang/p/10606908.html
实际上
因为之前试过
所以果断放弃conda,没选任何虚拟环境,直接选的python3.6.8编译,这篇教程显然和实际情况不一样
二. Ubuntu18.04安装Openssl-1.1.1
教程
1.查看版本
Ubuntu
的版本是18.04
。使用openssl version
命令查看openssl
版本,可以看到Ubuntu
自带了openssl-1.1.0
版本,因此安装新版本需要替换旧版本。
2.下载openssl
打开openssl
官网的下载页面可以看到最新的软件包,下载openssl-1.1.1b.tar.gz
。放到Ubuntu
系统中。
3.解压和安装
使用命令tar -xzvf openssl-1.1.1b.tar.gz
解压。
使用cd openssl-1.1.1b
进入目录,并且使用./config
生成MakeFile
,不加任何参数,默认的安装位置为:/usr/local/bin/openssl
。
-
使用
make
进行编译 -
不放心的话可以使用
make tset
检查一下(可选步骤) -
使用
sudo make install
进行安装,这里一定要选择root
用户的权限执行。
4.备份与替换
到上一步openssl就算安装好了,但是还无法使用,需要通过软链接的方式将新旧版本就行替换,依次运行下列命令。
sudo mv /usr/bin/openssl /usr/bin/openssl.old //将旧版本的openssl进行备份
sudo ln -s /usr/local/bin/openssl /usr/bin/openssl //将新版本的openssl进行软链接
cd /etc/ //进入etc目录
su //下一步一定要切换到root用户
echo "/usr/local/lib" >> ld.so.conf //将openssl的安装路径加入配置中
ldconfig //重新加载配置
使用openssl version
查看,已经安装好。
如果需要更换版本的话(一般也不会),修改软链接的名称即可,参照:
sudo mv /usr/bin/openssl /usr/bin/openssl.new
sudo mv /usr/bin/openssl.old /usr/bin/openssl
5.安装依赖库
openssl
安装结束之后,需要安装依赖库才能够进行编程,使用sudo apt-get install libssl-dev
安装依赖库,可以看到同时也下载了libssl-doc
。
由于下载的依赖库比较旧,我们在前面安装的openssl包中已经安装了新版本的库,因此需要将新旧库进行替换,仍然要做上一步的原因是尽量把能自动配置安装的东西安装好,只需要手动替换新的东西。下面是新旧库的对比(上面为新):
依次使用以下命令进行替换:
sudo mv /usr/include/openssl /usr/include/openssl.old //将旧版本进行备份
sudo ln -s /usr/local/include/openssl /usr/include/openssl //将新版本进行软链接
6.测试
编写一个测试代码test_openssl.c:
#include <stdio.h>
#include <openssl/evp.h>
int main(){
OpenSSL_add_all_algorithms();
return 0;
}
然后用下面的命令编译:
gcc -o to test_openssl.c -L/usr/local/openssl/lib -lssl -lcrypto -ldl -lpthread
执行./to;echo $?
,结果打印0。
参考资料
Linux下OpenSSL的安装与使用
解决引用openssl静态库libcrypto.a和libssl.a出现undefined reference to异常的有关问题
实际上
待实验(没有试)
三. linux下通过pip安装最新uwsgi
教程
通过yum install uwsgi
安装的uwsgi
在进行测试的时候,发现版本是2.0.15,但是启动uwsgi
测试的时候报参数错误,后来改用pip安装(先yum remove uwsgi
删除老的uwsgi
)就成功了。uwsgi
安装完成之后的样子
安装pip
wget https://bootstrap.pypa.io/get-pip.py
python ./get-pip.py
安装uwsgi
,一个干净的linux
系统安装uwsgi
过程中,会遇到以下两个错误。
Exception: you need a C compiler to build uWSGI
----------------------------------------
Failed building wheel for uwsgi
Running setup.py clean for uwsgi
Failed to build uwsgi
Installing collected packages: uwsgi
Running setup.py install for uwsgi ... error
解决办法:yum install gcc-*
另外一个错误:
fatal error: Python.h: No such file or directory
解决办法:yum install python-devel
安装成功的打印信息:
[root@VM_68_155_centos ~]# pip install uwsgi
Collecting uwsgi
Using cached uwsgi-2.0.16.tar.gz
Building wheels for collected packages: uwsgi
Running setup.py bdist_wheel for uwsgi ... done
Stored in directory: /root/.cache/pip/wheels/3a/e7/aa/24207bb9d885fe11fab3f7ad7d9d80c538a423d98494d43fd7
Successfully built uwsgi
Installing collected packages: uwsgi
Successfully installed uwsgi-2.0.16
[root@VM_68_155_centos ~]#
编辑一个简单的测试文件hello.py:
def application(env,start_response):
start_response('200 OK',[('Content-Type','text/html')])
return "Hello,world"
启动uwsgi : uwsgi --http-socket :80 --wsgi-file hello.py
[root@VM_68_155_centos ~]# /usr/bin/uwsgi --http-socket :80 --wsgi-file hello.py
*** Starting uWSGI 2.0.16 (64bit) on [Fri Feb 23 15:31:16 2018] ***
compiled with version: 4.8.5 20150623 (Red Hat 4.8.5-16) on 23 February 2018 07:28:20
os: Linux-3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017
nodename: VM_68_155_centos
machine: x86_64
clock source: unix
detected number of CPU cores: 1
current working directory: /root
detected binary path: /usr/bin/uwsgi
!!! no internal routing support, rebuild with pcre support !!!
dropping root privileges as early as possible
uWSGI running as root, you can use --uid/--gid/--chroot options
*** WARNING: you are running uWSGI as root !!! (use the --uid flag) ***
*** WARNING: you are running uWSGI without its master process manager ***
your processes number limit is 3895
your memory page size is 4096 bytes
detected max file descriptor number: 100001
lock engine: pthread robust mutexes
thunder lock: disabled (you can enable it with --thunder-lock)
uwsgi socket 0 bound to TCP address :80 fd 3
dropping root privileges after socket binding
uWSGI running as root, you can use --uid/--gid/--chroot options
*** WARNING: you are running uWSGI as root !!! (use the --uid flag) ***
Python version: 2.7.5 (default, Aug 4 2017, 00:39:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)]
*** Python threads support is disabled. You can enable it with --enable-threads ***
Python main interpreter initialized at 0x7d64c0
dropping root privileges after plugin initialization
uWSGI running as root, you can use --uid/--gid/--chroot options
*** WARNING: you are running uWSGI as root !!! (use the --uid flag) ***
your server socket listen backlog is limited to 100 connections
your mercy for graceful operations on workers is 60 seconds
mapped 72904 bytes (71 KB) for 1 cores
*** Operational MODE: single process ***
WSGI app 0 (mountpoint='') ready in 0 seconds on interpreter 0x7d64c0 pid: 6557 (default app)
dropping root privileges after application loading
uWSGI running as root, you can use --uid/--gid/--chroot options
*** WARNING: you are running uWSGI as root !!! (use the --uid flag) ***
*** uWSGI is running in multiple interpreter mode ***
spawned uWSGI worker 1 (and the only) (pid: 6557, cores: 1)
测试uwsgi-server
实际上
系统不一样,没有试
四. Failed building wheel for uwsgi(安装uwsgi) 或者Failed building wheel for cryptography(安装pymql)
在virtualenv下安装uwsgi失败 或者安装pymql失败
-
系统为ubuntu16.04
-
python版本为3.6
解决办法
sudo apt-get install build-essential libssl-dev libffi-dev python-dev
五. 安装uwsgi 报错 是什么原因??
教程
问题
Collecting uwsgi
Using cached uWSGI-2.0.19.1.tar.gz (803 kB)
Building wheels for collected packages: uwsgi
Building wheel for uwsgi (setup.py) … error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -u -c ‘import sys, setuptools, tokenize; sys.argv[0] = ‘"’"’/tmp/pip-install-ql2quzrl/uwsgi/setup.py’"’"’; file=’"’"’/tmp/pip-install-ql2quzrl/uwsgi/setup.py’"’"’;f=getattr(tokenize, ‘"’"‘open’"’"’, open)(file);code=f.read().replace(’"’"’\r\n’"’"’, ‘"’"’\n’"’"’);f.close();exec(compile(code, file, ‘"’"‘exec’"’"’))’ bdist_wheel -d /tmp/pip-wheel-z073i90q
cwd: /tmp/pip-install-ql2quzrl/uwsgi/
Complete output (93 lines):
/usr/lib64/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: ‘descriptions’
warnings.warn(msg)
running bdist_wheel
running build
running build_py
creating build
creating build/lib
copying uwsgidecorators.py -> build/lib
installing to build/bdist.linux-x86_64/wheel
running install
using profile: buildconf/default.ini
detected include path: [’/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include’, ‘/usr/local/include’, ‘/usr/include’]
Patching “bin_name” to properly install_scripts dir
detected CPU cores: 1
configured CFLAGS: -O2 -I. -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-format -Wno-format-security -DUWSGI_HAS_IFADDRS -DUWSGI_LOCK_USE_MUTEX -DUWSGI_EVENT_USE_EPOLL -DUWSGI_EVENT_TIMER_USE_TIMERFD -DUWSGI_EVENT_FILEMONITOR_USE_INOTIFY -DUWSGI_VERSION="“2.0.19.1"” -DUWSGI_VERSION_BASE=“2” -DUWSGI_VERSION_MAJOR=“0” -DUWSGI_VERSION_MINOR=“19” -DUWSGI_VERSION_REVISION=“1” -DUWSGI_VERSION_CUSTOM="""" -DUWSGI_YAML -DUWSGI_PLUGIN_DIR=""."" -DUWSGI_DECLARE_EMBEDDED_PLUGINS=“UDEP(python);UDEP(gevent);UDEP(ping);UDEP(cache);UDEP(nagios);UDEP(rrdtool);UDEP(carbon);UDEP(rpc);UDEP(corerouter);UDEP(fastrouter);UDEP(http);UDEP(ugreen);UDEP(signal);UDEP(syslog);UDEP(rsyslog);UDEP(logsocket);UDEP(router_uwsgi);UDEP(router_redirect);UDEP(router_basicauth);UDEP(zergpool);UDEP(redislog);UDEP(mongodblog);UDEP(router_rewrite);UDEP(router_http);UDEP(logfile);UDEP(router_cache);UDEP(rawrouter);UDEP(router_static);UDEP(sslrouter);UDEP(spooler);UDEP(cheaper_busyness);UDEP(symcall);UDEP(transformation_tofile);UDEP(transformation_gzip);UDEP(transformation_chunked);UDEP(transformation_offload);UDEP(router_memcached);UDEP(router_redis);UDEP(router_hash);UDEP(router_expires);UDEP(router_metrics);UDEP(transformation_template);UDEP(stats_pusher_socket);” -DUWSGI_LOAD_EMBEDDED_PLUGINS=“ULEP(python);ULEP(gevent);ULEP(ping);ULEP(cache);ULEP(nagios);ULEP(rrdtool);ULEP(carbon);ULEP(rpc);ULEP(corerouter);ULEP(fastrouter);ULEP(http);ULEP(ugreen);ULEP(signal);ULEP(syslog);ULEP(rsyslog);ULEP(logsocket);ULEP(router_uwsgi);ULEP(router_redirect);ULEP(router_basicauth);ULEP(zergpool);ULEP(redislog);ULEP(mongodblog);ULEP(router_rewrite);ULEP(router_http);ULEP(logfile);ULEP(router_cache);ULEP(rawrouter);ULEP(router_static);ULEP(sslrouter);ULEP(spooler);ULEP(cheaper_busyness);ULEP(symcall);ULEP(transformation_tofile);ULEP(transformation_gzip);ULEP(transformation_chunked);ULEP(transformation_offload);ULEP(router_memcached);ULEP(router_redis);ULEP(router_hash);ULEP(router_expires);ULEP(router_metrics);ULEP(transformation_template);ULEP(stats_pusher_socket);”
*** uWSGI compiling server core ***
[gcc -pthread] core/utils.o
[gcc -pthread] core/protocol.o
[gcc -pthread] core/socket.o
[gcc -pthread] core/logging.o
[gcc -pthread] core/master.o
[gcc -pthread] core/master_utils.o
[gcc -pthread] core/emperor.o
[gcc -pthread] core/notify.o
[gcc -pthread] core/mule.o
[gcc -pthread] core/subscription.o
[gcc -pthread] core/stats.o
[gcc -pthread] core/sendfile.o
[gcc -pthread] core/async.o
[gcc -pthread] core/master_checks.o
[gcc -pthread] core/fifo.o
[gcc -pthread] core/offload.o
[gcc -pthread] core/io.o
[gcc -pthread] core/static.o
[gcc -pthread] core/websockets.o
[gcc -pthread] core/spooler.o
[gcc -pthread] core/snmp.o
[gcc -pthread] core/exceptions.o
[gcc -pthread] core/config.o
[gcc -pthread] core/setup_utils.o
[gcc -pthread] core/clock.o
[gcc -pthread] core/init.o
[gcc -pthread] core/buffer.o
[gcc -pthread] core/reader.o
[gcc -pthread] core/writer.o
[gcc -pthread] core/alarm.o
[gcc -pthread] core/cron.o
[gcc -pthread] core/hooks.o
[gcc -pthread] core/plugins.o
[gcc -pthread] core/lock.o
[gcc -pthread] core/cache.o
[gcc -pthread] core/daemons.o
[gcc -pthread] core/errors.o
[gcc -pthread] core/hash.o
[gcc -pthread] core/master_events.o
[gcc -pthread] core/chunked.o
[gcc -pthread] core/queue.o
[gcc -pthread] core/event.o
[gcc -pthread] core/signal.o
[gcc -pthread] core/strings.o
[gcc -pthread] core/progress.o
[gcc -pthread] core/timebomb.o
[gcc -pthread] core/ini.o
[gcc -pthread] core/fsmon.o
[gcc -pthread] core/mount.o
[gcc -pthread] core/metrics.o
[gcc -pthread] core/plugins_builder.o
[gcc -pthread] core/sharedarea.o
[gcc -pthread] core/rpc.o
[gcc -pthread] core/gateway.o
[gcc -pthread] core/loop.o
[gcc -pthread] core/cookie.o
[gcc -pthread] core/querystring.o
[gcc -pthread] core/rb_timers.o
[gcc -pthread] core/transformations.o
[gcc -pthread] core/uwsgi.o
[gcc -pthread] proto/base.o
[gcc -pthread] proto/uwsgi.o
[gcc -pthread] proto/http.o
[gcc -pthread] proto/fastcgi.o
[gcc -pthread] proto/scgi.o
[gcc -pthread] proto/puwsgi.o
[gcc -pthread] lib/linux_ns.o
[gcc -pthread] core/yaml.o
[gcc -pthread] core/dot_h.o
[gcc -pthread] core/config_py.o
*** uWSGI compiling embedded plugins ***
[gcc -pthread] plugins/python/python_plugin.o
In file included from plugins/python/python_plugin.c:1:0:
plugins/python/uwsgi_python.h:2:20: fatal error: Python.h: No such file or directory
#include <Python.h>
^
compilation terminated.
ERROR: Failed building wheel for uwsgi
Running setup.py clean for uwsgi
Failed to build uwsgi
Installing collected packages: uwsgi
Running setup.py install for uwsgi … error
ERROR: Command errored out with exit status 1:
command: /usr/bin/python3 -u -c ‘import sys, setuptools, tokenize; sys.argv[0] = ‘"’"’/tmp/pip-install-ql2quzrl/uwsgi/setup.py’"’"’; file=’"’"’/tmp/pip-install-ql2quzrl/uwsgi/setup.py’"’"’;f=getattr(tokenize, ‘"’"‘open’"’"’, open)(file);code=f.read().replace(’"’"’\r\n’"’"’, ‘"’"’\n’"’"’);f.close();exec(compile(code, file, ‘"’"‘exec’"’"’))’ install --record /tmp/pip-record-0no_26wr/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.6m/uwsgi
cwd: /tmp/pip-install-ql2quzrl/uwsgi/
Complete output (86 lines):
/usr/lib64/python3.6/distutils/dist.py:261: UserWarning: Unknown distribution option: ‘descriptions’
warnings.warn(msg)
running install
using profile: buildconf/default.ini
detected include path: [’/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include’, ‘/usr/local/include’, ‘/usr/include’]
Patching “bin_name” to properly install_scripts dir
detected CPU cores: 1
configured CFLAGS: -O2 -I. -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-format -Wno-format-security -DUWSGI_HAS_IFADDRS -DUWSGI_LOCK_USE_MUTEX -DUWSGI_EVENT_USE_EPOLL -DUWSGI_EVENT_TIMER_USE_TIMERFD -DUWSGI_EVENT_FILEMONITOR_USE_INOTIFY -DUWSGI_VERSION="“2.0.19.1"” -DUWSGI_VERSION_BASE=“2” -DUWSGI_VERSION_MAJOR=“0” -DUWSGI_VERSION_MINOR=“19” -DUWSGI_VERSION_REVISION=“1” -DUWSGI_VERSION_CUSTOM="""" -DUWSGI_YAML -DUWSGI_PLUGIN_DIR=""."" -DUWSGI_DECLARE_EMBEDDED_PLUGINS=“UDEP(python);UDEP(gevent);UDEP(ping);UDEP(cache);UDEP(nagios);UDEP(rrdtool);UDEP(carbon);UDEP(rpc);UDEP(corerouter);UDEP(fastrouter);UDEP(http);UDEP(ugreen);UDEP(signal);UDEP(syslog);UDEP(rsyslog);UDEP(logsocket);UDEP(router_uwsgi);UDEP(router_redirect);UDEP(router_basicauth);UDEP(zergpool);UDEP(redislog);UDEP(mongodblog);UDEP(router_rewrite);UDEP(router_http);UDEP(logfile);UDEP(router_cache);UDEP(rawrouter);UDEP(router_static);UDEP(sslrouter);UDEP(spooler);UDEP(cheaper_busyness);UDEP(symcall);UDEP(transformation_tofile);UDEP(transformation_gzip);UDEP(transformation_chunked);UDEP(transformation_offload);UDEP(router_memcached);UDEP(router_redis);UDEP(router_hash);UDEP(router_expires);UDEP(router_metrics);UDEP(transformation_template);UDEP(stats_pusher_socket);” -DUWSGI_LOAD_EMBEDDED_PLUGINS=“ULEP(python);ULEP(gevent);ULEP(ping);ULEP(cache);ULEP(nagios);ULEP(rrdtool);ULEP(carbon);ULEP(rpc);ULEP(corerouter);ULEP(fastrouter);ULEP(http);ULEP(ugreen);ULEP(signal);ULEP(syslog);ULEP(rsyslog);ULEP(logsocket);ULEP(router_uwsgi);ULEP(router_redirect);ULEP(router_basicauth);ULEP(zergpool);ULEP(redislog);ULEP(mongodblog);ULEP(router_rewrite);ULEP(router_http);ULEP(logfile);ULEP(router_cache);ULEP(rawrouter);ULEP(router_static);ULEP(sslrouter);ULEP(spooler);ULEP(cheaper_busyness);ULEP(symcall);ULEP(transformation_tofile);ULEP(transformation_gzip);ULEP(transformation_chunked);ULEP(transformation_offload);ULEP(router_memcached);ULEP(router_redis);ULEP(router_hash);ULEP(router_expires);ULEP(router_metrics);ULEP(transformation_template);ULEP(stats_pusher_socket);”
*** uWSGI compiling server core ***
core/utils.o is up to date
core/protocol.o is up to date
core/socket.o is up to date
core/logging.o is up to date
core/master.o is up to date
core/master_utils.o is up to date
core/emperor.o is up to date
core/notify.o is up to date
core/mule.o is up to date
core/subscription.o is up to date
core/stats.o is up to date
core/sendfile.o is up to date
core/async.o is up to date
core/master_checks.o is up to date
core/fifo.o is up to date
core/offload.o is up to date
core/io.o is up to date
core/static.o is up to date
core/websockets.o is up to date
core/spooler.o is up to date
core/snmp.o is up to date
core/exceptions.o is up to date
core/config.o is up to date
core/setup_utils.o is up to date
core/clock.o is up to date
core/init.o is up to date
core/buffer.o is up to date
core/reader.o is up to date
core/writer.o is up to date
core/alarm.o is up to date
core/cron.o is up to date
core/hooks.o is up to date
core/plugins.o is up to date
core/lock.o is up to date
core/cache.o is up to date
core/daemons.o is up to date
core/errors.o is up to date
core/hash.o is up to date
core/master_events.o is up to date
core/chunked.o is up to date
core/queue.o is up to date
core/event.o is up to date
core/signal.o is up to date
core/strings.o is up to date
core/progress.o is up to date
core/timebomb.o is up to date
core/ini.o is up to date
core/fsmon.o is up to date
core/mount.o is up to date
core/metrics.o is up to date
core/plugins_builder.o is up to date
core/sharedarea.o is up to date
core/rpc.o is up to date
core/gateway.o is up to date
core/loop.o is up to date
core/cookie.o is up to date
core/querystring.o is up to date
core/rb_timers.o is up to date
core/transformations.o is up to date
core/uwsgi.o is up to date
proto/base.o is up to date
proto/uwsgi.o is up to date
proto/http.o is up to date
proto/fastcgi.o is up to date
proto/scgi.o is up to date
proto/puwsgi.o is up to date
lib/linux_ns.o is up to date
core/yaml.o is up to date
[gcc -pthread] core/dot_h.o
[gcc -pthread] core/config_py.o
*** uWSGI compiling embedded plugins ***
[gcc -pthread] plugins/python/python_plugin.o
In file included from plugins/python/python_plugin.c:1:0:
plugins/python/uwsgi_python.h:2:20: fatal error: Python.h: No such file or directory
#include <Python.h>
^
compilation terminated.
----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python3 -u -c ‘import sys, setuptools, tokenize; sys.argv[0] = ‘"’"’/tmp/pip-install-ql2quzrl/uwsgi/setup.py’"’"’; file=’"’"’/tmp/pip-install-ql2quzrl/uwsgi/setup.py’"’"’;f=getattr(tokenize, ‘"’"‘open’"’"’, open)(file);code=f.read().replace(’"’"’\r\n’"’"’, ‘"’"’\n’"’"’);f.close();exec(compile(code, file, ‘"’"‘exec’"’"’))’ install --record /tmp/pip-record-0no_26wr/install-record.txt --single-version-externally-managed --compile --install-headers /usr/local/include/python3.6m/uwsgi Check the logs for full command output.
pip install uwsgi 报这样的错误 大佬们 这是什么原因?????????
回答
python使用命令:
yum install python-devel
python3使用命令
yum install python3-devel
实际上
系统不一样,没有试验
六. Ubuntu常见问题及解决方法
1. Ubuntu使用apt-get时提示>”E: You must put some ‘source’ URIs in your sources.list”。
准备尝试建造uwsgi
apt build-dep uwsgi
解决方法
sudo sed -i -- 's/#deb-src/deb-src/g' /etc/apt/sources.list && sudo sed -i --
's/# deb-src/deb-src/g' /etc/apt/sources.list
sudo apt-get update
继续
apt build-dep uwsgi
pip3 install uwsgi
依旧报错
2 vim配置
不错的方案:https://github.com/ma6174/vim
在用户目录下新建.vimrc,保存即可生效。若想对所有用户生效,可直接修改/etc/vimrc.
set nocompatible " 关闭 vi 兼容模式
syntax on " 自动语法高亮
colorscheme molokai " 设定配色方案
set number " 显示行号
set cursorline " 突出显示当前行
set ruler " 打开状态栏标尺
set shiftwidth=4 " 设定 << 和 >> 命令移动时的宽度为 4
set softtabstop=4 " 使得按退格键时可以一次删掉 4 个空格
set tabstop=4 " 设定 tab 长度为 4
set nobackup " 覆盖文件时不备份
set autochdir " 自动切换当前目录为当前文件所在的目录
filetype plugin indent on " 开启插件
set backupcopy=yes " 设置备份时的行为为覆盖
set ignorecase smartcase " 搜索时忽略大小写,但在有一个或以上大写字母时仍保持对大小写敏感
set nowrapscan " 禁止在搜索到文件两端时重新搜索
set incsearch " 输入搜索内容时就显示搜索结果
set hlsearch " 搜索时高亮显示被找到的文本
set noerrorbells " 关闭错误信息响铃
set novisualbell " 关闭使用可视响铃代替呼叫
set t_vb= " 置空错误铃声的终端代码
" set showmatch " 插入括号时,短暂地跳转到匹配的对应括号
" set matchtime=2 " 短暂跳转到匹配括号的时间
set magic " 设置魔术
set hidden " 允许在有未保存的修改时切换缓冲区,此时的修改由 vim 负责保存
set guioptions-=T " 隐藏工具栏
set guioptions-=m " 隐藏菜单栏
set smartindent " 开启新行时使用智能自动缩进
set backspace=indent,eol,start
" 不设定在插入状态无法用退格键和 Delete 键删除回车符
set cmdheight=1 " 设定命令行的行数为 1
set laststatus=2 " 显示状态栏 (默认值为 1, 无法显示状态栏)
set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\
" 设置在状态行显示的信息
set foldenable " 开始折叠
set foldmethod=syntax " 设置语法折叠
set foldcolumn=0 " 设置折叠区域的宽度
setlocal foldlevel=1 " 设置折叠层数为
" set foldclose=all " 设置为自动关闭折叠
" nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
" 用空格键来开关折叠
3. 用apt-get安装时,提示:E could not get lock /vaa/lib/dpkg/lock -open等
reasons :可能是由于上次使用apt-get install 时,未能成功安装便强制结束了。
solutions:
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
常用软件安装
chrome
方法一:(Ubuntu16.04已测)
添加签名密钥:
wget -q -O - http://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
添加软件源:
sudo sh -c ‘echo “deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main” >> /etc/apt/sources.list.d/google.list’
安装chrome
sudo apt-get update
sudo apt-get install google-chrome-stable
方法二:(未测)
安装依赖:
sudo apt install libappindicator1 libdbusmenu-glib4 libdbusmenu-gtk4 libindicator7 libpango1.0-0 libpangox-1.0-0
下载deb:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
安装deb:
sudo dpkg -i google-chrome-stable_current_amd64.deb
或
sudo apt install gdebi-core
sudo gdebi google-chrome-stable_current_amd64.deb
有道词典
百度有道词典,进入有道首页,点“下载词典客户端”,下载对应版本。
打开终端,进入下载目录,输入
sudo dpkg -i youdao-dict_1.0.2~ubuntu_amd64.deb
notepadqq
在Ubuntu
/ Ubuntu Kylin
下安装和卸载 Nodepadqq
对于Ubuntu
发行版本可以通过PPA
安装,命令如下:
sudo add-apt-repository ppa:notepadqq-team/notepadqq
sudo apt-get update
sudo apt-get install notepadqq
类似的,卸载命令如下:
sudo apt-get remove notepadqq
sudo add-apt-repository --remove ppa:notepadqq-team/notepadqq
cmake 编译
[ ] 添加调试信息,在CMakeList.txt中添加以下内容:
SET(CMAKE_BUILD_TYPE "Debug")
SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g2 -ggdb")
SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall")
Failed building wheel for uwsgi(安装uwsgi) 或者Failed building wheel for cryptography(安装pymql)