netdata/netdata

[Bug]: Netdata 1.45.4 fails to build with h2o, cloud and aclk disabled

diizzyy opened this issue · 0 comments

Bug description

Disabling h2o, cloud and aclk causes build to fail (builds with h2o enabled)

-DENABLE_CLOUD:BOOL=false -DENABLE_ACLK:BOOL=false -DENABLE_H2O:BOOL=OFF

ld: error: undefined symbol: c_rhash_new

>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(http_parse_ctx_create)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(handle_http_request)

ld: error: undefined symbol: c_rhash_iter_str_keys
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(http_parse_ctx_destroy)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(http_parse_ctx_destroy)

ld: error: undefined symbol: c_rhash_get_ptr_by_str
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(http_parse_ctx_destroy)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(get_http_header_by_name)

ld: error: undefined symbol: c_rhash_destroy
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(http_parse_ctx_destroy)

ld: error: undefined symbol: rbuf_find_bytes
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced 3 more times

ld: error: undefined symbol: rbuf_pop
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced 4 more times

ld: error: undefined symbol: rbuf_bump_tail
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced 2 more times

ld: error: undefined symbol: rbuf_memcmp_n
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)

ld: error: undefined symbol: c_rhash_insert_str_ptr
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)

ld: error: undefined symbol: rbuf_bytes_available
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)
>>> referenced 1 more times

ld: error: undefined symbol: rbuf_get_capacity
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(parse_http_response)

ld: error: undefined symbol: rbuf_create
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(https_request)
>>> referenced by sender.c
>>>               CMakeFiles/netdata.dir/src/streaming/sender.c.o:(attempt_to_connect)

ld: error: undefined symbol: rbuf_free
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(https_request)
>>> referenced by sender.c
>>>               CMakeFiles/netdata.dir/src/streaming/sender.c.o:(attempt_to_connect)
>>> referenced by sender.c
>>>               CMakeFiles/netdata.dir/src/streaming/sender.c.o:(attempt_to_connect)

ld: error: undefined symbol: rbuf_get_linear_insert_range
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(handle_http_request)

ld: error: undefined symbol: rbuf_bump_head
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(handle_http_request)

ld: error: undefined symbol: rbuf_bytes_free
>>> referenced by https_client.c
>>>               CMakeFiles/netdata.dir/src/aclk/https_client.c.o:(handle_http_request)

ld: error: undefined symbol: rbuf_push
>>> referenced by sender.c
>>>               CMakeFiles/netdata.dir/src/streaming/sender.c.o:(attempt_to_connect)
c++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.

Expected behavior

Not to fail on linking and possibly not build and link aclk bits

Steps to reproduce

Complete list of args for cmake:

-DENABLE_CLOUD:BOOL=false -DENABLE_ACLK:BOOL=false -DENABLE_PLUGIN_CUPS:BOOL=false -DENABLE_PLUGIN_DBENGINE:BOOL=false -DENABLE_PLUGIN_FREEIPMI:BOOL=false -DENABLE_PLUGIN_GO:BOOL=false -DENABLE_ML:BOOL=false -DENABLE_EXPORTER_PROMETHEUS_REMOTE_WRITE:BOOL=false -DCMAKE_C_COMPILER:STRING="cc"  -DCMAKE_CXX_COMPILER:STRING="c++"  -DCMAKE_C_FLAGS:STRING="-O2 -pipe -march=tigerlake  -D_WANT_VMMETER -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing "  -DCMAKE_C_FLAGS_DEBUG:STRING="-O2 -pipe -march=tigerlake  -D_WANT_VMMETER -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing "  -DCMAKE_C_FLAGS_RELEASE:STRING="-O2 -pipe -march=tigerlake  -D_WANT_VMMETER -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -DNDEBUG"  -DCMAKE_CXX_FLAGS:STRING="-O2 -pipe -march=tigerlake -D_WANT_VMMETER -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include "  -DCMAKE_CXX_FLAGS_DEBUG:STRING="-O2 -pipe -march=tigerlake -D_WANT_VMMETER -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include "  -DCMAKE_CXX_FLAGS_RELEASE:STRING="-O2 -pipe -march=tigerlake -D_WANT_VMMETER -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include  -DNDEBUG"  -DCMAKE_EXE_LINKER_FLAGS:STRING="  -fstack-protector-strong -L/usr/local/lib "  -DCMAKE_MODULE_LINKER_FLAGS:STRING="  -fstack-protector-strong -L/usr/local/lib "  -DCMAKE_SHARED_LINKER_FLAGS:STRING="  -fstack-protector-strong -L/usr/local/lib "  -DCMAKE_INSTALL_PREFIX:PATH="/usr/local"  -DCMAKE_BUILD_TYPE:STRING="Release"  -DTHREADS_HAVE_PTHREAD_ARG:BOOL=YES  -DCMAKE_INSTALL_RPATH_USE_LINK_PATH=YES  -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON  -DFETCHCONTENT_FULLY_DISCONNECTED:BOOL=ON -DDISABLE_HARDENING:BOOL=ON -DENABLE_H2O:BOOL=OFF -DENABLE_PLUGIN_EBPF:BOOL=OFF -DENABLE_PLUGIN_NFACCT:BOOL=OFF -DENABLE_PLUGIN_XENSTAT:BOOL=OFF -DENABLE_PLUGIN_DEBUGFS:BOOL=OFF -DENABLE_PLUGIN_PERF:BOOL=OFF -DENABLE_PLUGIN_SLABINFO:BOOL=OFF -DENABLE_PLUGIN_SYSTEMD_JOURNAL:BOOL=OFF -DENABLE_PLUGIN_CGROUP_NETWORK:BOOL=OFF -DENABLE_PLUGIN_LOCAL_LISTENERS:BOOL=OFF -DENABLE_PLUGIN_NETWORK_VIEWER:BOOL=OFF -GNinja -DPython_ADDITIONAL_VERSIONS=3.9 -DPython_EXECUTABLE:FILEPATH="/usr/local/bin/python3.9" -DPython3_EXECUTABLE:FILEPATH="/usr/local/bin/python3.9" -DBOOST_PYTHON_SUFFIX:STRING=39

Installation method

from source

System info

FreeBSD 14.0-RELEASE-p6 (amd64)

Netdata build info

N/A

Additional info

No response