[Bug]: 0.94.0 build failure
remicollet opened this issue · comments
Bug report
For ZTS builds:
libtool: link: gcc -shared -fPIC -DPIC components/container_id/.libs/container_id.o components/log/.libs/log.o components/sapi/.libs/sapi.o components/string_view/.libs/string_view.o zend_abstract_interface/interceptor/php8/.libs/interceptor.o zend_abstract_interface/interceptor/php8/.libs/resolver.o zend_abstract_interface/jit_utils/.libs/jit_blacklist.o zend_abstract_interface/sandbox/php8/.libs/sandbox.o zend_abstract_interface/config/.libs/config.o zend_abstract_interface/config/.libs/config_decode.o zend_abstract_interface/config/.libs/config_ini.o zend_abstract_interface/config/.libs/config_runtime.o zend_abstract_interface/env/.libs/env.o zend_abstract_interface/exceptions/.libs/exceptions.o zend_abstract_interface/headers/.libs/headers.o zend_abstract_interface/hook/.libs/hook.o zend_abstract_interface/json/.libs/json.o zend_abstract_interface/symbols/.libs/lookup.o zend_abstract_interface/symbols/.libs/call.o zend_abstract_interface/uri_normalization/.libs/uri_normalization.o zend_abstract_interface/zai_string/.libs/string.o ext/vendor/mpack/.libs/mpack.o ext/vendor/mt19937/.libs/mt19937-64.o src/dogstatsd/.libs/client.o ext/.libs/handlers_curl.o ext/hook/.libs/uhook_attributes.o ext/.libs/handlers_fiber.o ext/.libs/ddtrace.o ext/.libs/arrays.o ext/.libs/auto_flush.o ext/.libs/circuit_breaker.o ext/.libs/comms_php.o ext/.libs/compat_string.o ext/.libs/coms.o ext/.libs/configuration.o ext/.libs/ddshared.o ext/.libs/distributed_tracing_headers.o ext/.libs/dogstatsd_client.o ext/.libs/engine_api.o ext/.libs/engine_hooks.o ext/.libs/excluded_modules.o ext/.libs/handlers_api.o ext/.libs/handlers_exception.o ext/.libs/handlers_internal.o ext/.libs/handlers_pcntl.o ext/integrations/.libs/integrations.o ext/.libs/ip_extraction.o ext/.libs/logging.o ext/.libs/memory_limit.o ext/limiter/.libs/limiter.o ext/priority_sampling/.libs/priority_sampling.o ext/.libs/profiling.o ext/.libs/random.o ext/.libs/request_hooks.o ext/.libs/serializer.o ext/.libs/sidecar.o ext/.libs/signals.o ext/.libs/span.o ext/.libs/startup_logging.o ext/.libs/telemetry.o ext/tracer_tag_propagation/.libs/tracer_tag_propagation.o ext/hook/.libs/uhook.o ext/hook/.libs/uhook_legacy.o -lcurl -lrt -lm /dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/ZTS/target/tracer-release/libddtrace_php.a -O2 -flto=auto -g -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -mno-omit-leaf-frame-pointer -Wl,-z -Wl,relro -Wl,--as-needed -Wl,-z -Wl,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes -flto -fuse-linker-plugin -pthread -Wl,-soname -Wl,ddtrace.so -Wl,-version-script -Wl,.libs/ddtrace.ver -o .libs/ddtrace.so
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.h:115:46: error: '_tsrm_ls_cache' is defined with tls model local-dynamic
115 | extern __thread void *ATTR_TLS_LOCAL_DYNAMIC TSRMLS_CACHE;
| ^
/dev/shm/BUILD/php-pecl-datadog-trace-0.94.0/datadog_trace-0.94.0/ext/ddtrace.c:113:16: note: previously defined here as global-dynamic
113 | TSRM_TLS void *TSRMLS_CACHE = NULL;
| ^
lto-wrapper: fatal error: gcc returned 1 exit status
compilation terminated.
PHP version
8.2.12
Tracer or profiler version
0.94.0
Installed extensions
No response
Output of phpinfo()
No response
Upgrading from
No response
Disabling LTO is a workaround
Notice: LTO is enabled by default in some distributions (Fedora, RHEL...)
Does just adding it work as well like this?
d73e1a3
At least I don't know whether the compiler complains about the attribute, or the attribute missing on the definition in .c
file?
Same error with linked patch
@remicollet Can you check if #2383 fixes the problem?
Closing given #2383 has been merged - thanks Remi!