[pkg-uWSGI-devel] Bug#847207: uwsgi: FTBFS on multiple architectures with undefined references to uwsgi_* symbols

Raphaël Hertzog hertzog at debian.org
Tue Dec 6 14:25:31 UTC 2016


Source: uwsgi
Version: 2.0.14+20161117-1
Severity: serious
Justification: FTBFS

Looking at https://buildd.debian.org/status/package.php?p=uwsgi I see that
the current package failed to build on armel, armhf, i386, mips, mipsel
(and more unofficial arhitectures). The arm64 build also got stalled
somehow...

All the errors are similar:

    ./plugins/emperor_pg/emperor_pg.c:75: undefined reference to `uwsgi_str_num'
    ./plugins/emperor_pg/emperor_pg.c:75: undefined reference to `uwsgi_emperor_simple_do'
    ./plugins/emperor_pg/emperor_pg.c:80: undefined reference to `ui'
    ./plugins/emperor_pg/emperor_pg.c:94: undefined reference to `emperor_stop'
    ./plugins/emperor_pg/emperor_pg.c:68: undefined reference to `uwsgi_str_num'
    ./plugins/emperor_pg/emperor_pg.c:69: undefined reference to `uwsgi_str_num'
    ./plugins/emperor_pg/emperor_pg.c:43: undefined reference to `uwsgi_log'
    collect2: error: ld returned 1 exit status
    using profile: debian/buildconf/uwsgi-plugin.ini
    detected include path: ['/usr/lib/gcc/i686-linux-gnu/6/include', '/usr/local/include', '/usr/lib/gcc/i686-linux-gnu/6/include-fixed', '/usr/include/i386-linux-gnu', '/usr/include']
    *** uWSGI building and linking plugin plugins/emperor_pg ***
    i686-linux-gnu-gcc -pthread -fPIC -shared -o ./emperor_pg_plugin.so -I. -O2 -I. -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -O2 -fdebug-prefix-map=/«BUILDDIR»/uwsgi-2.0.14+20161117=. -fstack-protector-strong -Wformat -Werror=format-security -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.14-debian\"" -DUWSGI_VERSION_BASE="2" -DUWSGI_VERSION_MAJOR="0" -DUWSGI_VERSION_MINOR="14" -DUWSGI_VERSION_REVISION="0" -DUWSGI_VERSION_CUSTOM="\"debian\"" -DUWSGI_YAML -DUWSGI_LIBYAML -DUWSGI_JSON -DUWSGI_SSL -I/usr/include/libxml2 -DUWSGI_XML -DUWSGI_XML_LIBXML2 -DUWSGI_PLUGIN_DIR="\".\"" -Wmissing-prototypes -Wpointer-arith -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -fexcess-preci
 sion=standard -g -g -O2 -fstack-protector-strong -I/usr/include/mit-krb5 -no-pie -I/usr/include/postgresql -Demperor_pg_plugin=emperor_pg_plugin plugins/emperor_pg/emperor_pg.c -Wl,-z,relro -L../../src/common -Wl,-z,now -Wl,--as-needed -L/usr/lib/mit-krb5 -L/usr/lib/i386-linux-gnu/mit-krb5 -L/usr/lib/i386-linux-gnu -lpq
    *** unable to build emperor_pg plugin ***
    debian/rules:450: recipe for target 'debian/stamp-uwsgi-plugin-emperor-pg' failed
    make: *** [debian/stamp-uwsgi-plugin-emperor-pg] Error 1


I have the feeling that this is all related to the "-Wl,-z,now" flag but I don't know what
is injecting this flag here... 

-- System Information:
Debian Release: stretch/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.8.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)



More information about the pkg-uWSGI-devel mailing list