unbit / uwsgi

uWSGI application server container
http://projects.unbit.it/uwsgi
Other
3.45k stars 691 forks source link

Pip install fails with GCC 6 #1247

Closed mitchhentges closed 8 years ago

mitchhentges commented 8 years ago

GCC 6 added a warning for indentation levels, and uWSGI compiles with the -Werror flag. In version 2.0.12, the current released version of uWSGI, there's an indentation issue. Therefore, the warning is picked up by newer versions of GCC, which -Werror transforms into an error. In the end, uWSGI won't install.

The current version of uWSGI master compiles fine with GCC 6+. So, just by releasing the next version of uWSGI, the problem will be solved.

Here's some logs:

[mitch@FUZZLE-SERV ~]$ virtualenv2 ~/.test-env
New python executable in /home/mitch/.test-env/bin/python2
Also creating executable in /home/mitch/.test-env/bin/python
Installing setuptools, pip, wheel...done.
[mitch@FUZZLE-SERV ~]$ source ~/.test-env/bin/activate
(.test-env) [mitch@FUZZLE-SERV ~]$ ~/.test-env/bin/pip install uwsgi
Collecting uwsgi
  Using cached uwsgi-2.0.12.tar.gz
Building wheels for collected packages: uwsgi
  Running setup.py bdist_wheel for uwsgi ... error
  Complete output from command /home/mitch/.test-env/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-sZxXH0/uwsgi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmpjbRngbpip-wheel- --python-tag cp27:
  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-pc-linux-gnu/6.1.1/include', '/usr/local/include', '/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.1/include-fixed', '/usr/include']
  Patching "bin_name" to properly install_scripts dir
  detected CPU cores: 8
  configured CFLAGS: -O2 -I. -Wall -Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-strict-aliasing -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_CAP -DUWSGI_UUID -DUWSGI_VERSION="\"2.0.12\"" -DUWSGI_VERSION_BASE="2" -DUWSGI_VERSION_MAJOR="0" -DUWSGI_VERSION_MINOR="12" -DUWSGI_VERSION_REVISION="0" -DUWSGI_VERSION_CUSTOM="\"\"" -DUWSGI_YAML -DUWSGI_JSON -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 ***
  [thread 2][gcc -pthread] core/utils.o
  [thread 4][gcc -pthread] core/master.o
  [thread 6][gcc -pthread] core/socket.o
  [thread 0][gcc -pthread] core/logging.o
  [thread 3][gcc -pthread] core/protocol.o
  [thread 1][gcc -pthread] core/master_utils.o
  [thread 7][gcc -pthread] core/emperor.o
  [thread 5][gcc -pthread] core/notify.o
  [thread 5][gcc -pthread] core/mule.o
  [thread 3][gcc -pthread] core/subscription.o
  [thread 4][gcc -pthread] core/stats.o
  [thread 5][gcc -pthread] core/sendfile.o
  [thread 1][gcc -pthread] core/async.o
  [thread 0][gcc -pthread] core/master_checks.o
  [thread 5][gcc -pthread] core/fifo.o
  [thread 6][gcc -pthread] core/offload.o
  [thread 4][gcc -pthread] core/io.o
  [thread 7][gcc -pthread] core/static.o
  [thread 3][gcc -pthread] core/websockets.o
  [thread 5][gcc -pthread] core/spooler.o
  [thread 0][gcc -pthread] core/snmp.o
  [thread 1][gcc -pthread] core/exceptions.o
  [thread 6][gcc -pthread] core/config.o
  [thread 7][gcc -pthread] core/setup_utils.o
  [thread 3][gcc -pthread] core/clock.o
  [thread 0][gcc -pthread] core/init.o
  [thread 1][gcc -pthread] core/buffer.o
  [thread 5][gcc -pthread] core/reader.o
  [thread 4][gcc -pthread] core/writer.o
  [thread 3][gcc -pthread] core/alarm.o
  [thread 7][gcc -pthread] core/cron.o
  [thread 6][gcc -pthread] core/hooks.o
  [thread 2][gcc -pthread] core/plugins.o
  [thread 0][gcc -pthread] core/lock.o
  [thread 1][gcc -pthread] core/cache.o
  [thread 3][gcc -pthread] core/daemons.o
  [thread 7][gcc -pthread] core/errors.o
  [thread 5][gcc -pthread] core/hash.o
  [thread 4][gcc -pthread] core/master_events.o
  [thread 2][gcc -pthread] core/chunked.o
  [thread 0][gcc -pthread] core/queue.o
  [thread 6][gcc -pthread] core/event.o
  [thread 7][gcc -pthread] core/signal.o
  [thread 5][gcc -pthread] core/strings.o
  [thread 3][gcc -pthread] core/progress.o
  [thread 2][gcc -pthread] core/timebomb.o
  [thread 4][gcc -pthread] core/ini.o
  [thread 0][gcc -pthread] core/fsmon.o
  [thread 6][gcc -pthread] core/mount.o
  [thread 2][gcc -pthread] core/metrics.o
  [thread 3][gcc -pthread] core/plugins_builder.o
  [thread 5][gcc -pthread] core/sharedarea.o
  [thread 0][gcc -pthread] core/rpc.o
  [thread 7][gcc -pthread] core/gateway.o
  [thread 4][gcc -pthread] core/loop.o
  [thread 1][gcc -pthread] core/cookie.o
  [thread 3][gcc -pthread] core/querystring.o
  [thread 6][gcc -pthread] core/rb_timers.o
  [thread 4][gcc -pthread] core/transformations.o
  [thread 7][gcc -pthread] core/uwsgi.o
  [thread 0][gcc -pthread] proto/base.o
  [thread 5][gcc -pthread] proto/uwsgi.o
  [thread 1][gcc -pthread] proto/http.o
  [thread 3][gcc -pthread] proto/fastcgi.o
  [thread 6][gcc -pthread] proto/scgi.o
  [thread 4][gcc -pthread] proto/puwsgi.o
  [thread 2][gcc -pthread] lib/linux_ns.o
  [thread 5][gcc -pthread] core/zlib.o
  [thread 0][gcc -pthread] core/regexp.o
  [thread 6][gcc -pthread] core/routing.o
  [thread 4][gcc -pthread] core/yaml.o
  [thread 3][gcc -pthread] core/json.o
  [thread 5][gcc -pthread] core/ssl.o
  [thread 1][gcc -pthread] core/legion.o
  [thread 0][gcc -pthread] core/xmlconf.o
  [thread 2][gcc -pthread] core/dot_h.o
  [thread 2][gcc -pthread] core/config_py.o
  *** uWSGI compiling embedded plugins ***
  [thread 2][gcc -pthread] plugins/python/python_plugin.o
  [thread 4][gcc -pthread] plugins/python/pyutils.o
  [thread 3][gcc -pthread] plugins/python/pyloader.o
  [thread 0][gcc -pthread] plugins/python/wsgi_handlers.o
  [thread 5][gcc -pthread] plugins/python/wsgi_headers.o
  [thread 4][gcc -pthread] plugins/python/wsgi_subhandler.o
  [thread 3][gcc -pthread] plugins/python/web3_subhandler.o
  [thread 1][gcc -pthread] plugins/python/pump_subhandler.o
  [thread 0][gcc -pthread] plugins/python/gil.o
  [thread 5][gcc -pthread] plugins/python/uwsgi_pymodule.o
  [thread 4][gcc -pthread] plugins/python/profiler.o
  [thread 6][gcc -pthread] plugins/python/symimporter.o
  [thread 3][gcc -pthread] plugins/python/tracebacker.o
  [thread 2][gcc -pthread] plugins/python/raw.o
  [thread 0][gcc -pthread] plugins/gevent/gevent.o
  [thread 1][gcc -pthread] plugins/gevent/hooks.o
  [thread 4][gcc -pthread] plugins/ping/ping_plugin.o
  [thread 2][gcc -pthread] plugins/cache/cache.o
  [thread 3][gcc -pthread] plugins/nagios/nagios.o
  [thread 6][gcc -pthread] plugins/rrdtool/rrdtool.o
  [thread 7][gcc -pthread] plugins/carbon/carbon.o
  [thread 4][gcc -pthread] plugins/rpc/rpc_plugin.o
  [thread 0][gcc -pthread] plugins/corerouter/cr_common.o
  [thread 1][gcc -pthread] plugins/corerouter/cr_map.o
  [thread 3][gcc -pthread] plugins/corerouter/corerouter.o
  [thread 2][gcc -pthread] plugins/fastrouter/fastrouter.o
  [thread 6][gcc -pthread] plugins/http/http.o
  plugins/corerouter/cr_map.c: In function ‘uwsgi_cr_map_use_static_nodes’:
  plugins/corerouter/cr_map.c:156:5: error: this ‘if’ clause does not guard... [-Werror=misleading-indentation]
       if (!next_node)
       ^~
  plugins/corerouter/cr_map.c:159:6: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
        while (tmp_node != next_node) {
        ^~~~~
  cc1: all warnings being treated as errors

  ----------------------------------------
  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 /home/mitch/.test-env/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-sZxXH0/uwsgi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-TGanG7-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/mitch/.test-env/include/site/python2.7/uwsgi:
    running install
    using profile: buildconf/default.ini
    detected include path: ['/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.1/include', '/usr/local/include', '/usr/lib/gcc/x86_64-pc-linux-gnu/6.1.1/include-fixed', '/usr/include']
    Patching "bin_name" to properly install_scripts dir
    detected CPU cores: 8
    configured CFLAGS: -O2 -I. -Wall -Werror -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-strict-aliasing -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_CAP -DUWSGI_UUID -DUWSGI_VERSION="\"2.0.12\"" -DUWSGI_VERSION_BASE="2" -DUWSGI_VERSION_MAJOR="0" -DUWSGI_VERSION_MINOR="12" -DUWSGI_VERSION_REVISION="0" -DUWSGI_VERSION_CUSTOM="\"\"" -DUWSGI_YAML -DUWSGI_JSON -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/json.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
    [thread 2][gcc -pthread] core/dot_h.o
    [thread 1][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
    [thread 4][gcc -pthread] plugins/corerouter/cr_map.o
    plugins/corerouter/corerouter.o is up to date
    plugins/fastrouter/fastrouter.o is up to date
    plugins/http/http.o is up to date
    [thread 5][gcc -pthread] plugins/http/keepalive.o
    [thread 0][gcc -pthread] plugins/http/https.o
    [thread 7][gcc -pthread] plugins/http/spdy3.o
    [thread 6][gcc -pthread] plugins/ugreen/ugreen.o
    [thread 2][gcc -pthread] plugins/signal/signal_plugin.o
    [thread 3][gcc -pthread] plugins/syslog/syslog_plugin.o
    [thread 1][gcc -pthread] plugins/rsyslog/rsyslog_plugin.o
    plugins/corerouter/cr_map.c: In function ‘uwsgi_cr_map_use_static_nodes’:
    plugins/corerouter/cr_map.c:156:5: error: this ‘if’ clause does not guard... [-Werror=misleading-indentation]
         if (!next_node)
         ^~
    plugins/corerouter/cr_map.c:159:6: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
          while (tmp_node != next_node) {
          ^~~~~
    [thread 2][gcc -pthread] plugins/logsocket/logsocket_plugin.o
    [thread 6][gcc -pthread] plugins/router_uwsgi/router_uwsgi.o
    cc1: all warnings being treated as errors

    ----------------------------------------
Command "/home/mitch/.test-env/bin/python2 -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-sZxXH0/uwsgi/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-TGanG7-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/mitch/.test-env/include/site/python2.7/uwsgi" failed with error code 1 in /tmp/pip-build-sZxXH0/uwsgi/
xrmx commented 8 years ago

This has already been reported and fixed. Which distro has gcc 6 as default compiler?

mitchhentges commented 8 years ago

I'm using Arch Linux On May 8, 2016 1:04 PM, "Riccardo Magliocchetti" notifications@github.com wrote:

This has already been reported and fixed. Which distro has gcc 6 as default compiler?

— You are receiving this because you authored the thread. Reply to this email directly or view it on GitHub https://github.com/unbit/uwsgi/issues/1247#issuecomment-217709703

svenstaro commented 8 years ago

I, too, ran into this and would like to request a release. The last release is quite some time anyway.

xrmx commented 8 years ago

2.0.13 is out, closing :)