Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • Kea Kea
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 505
    • Issues 505
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 53
    • Merge requests 53
  • Deployments
    • Deployments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • ISC Open Source Projects
  • KeaKea
  • Issues
  • #2460
Closed
Open
Created Jun 27, 2022 by Andrei Pavel@andrei🐧Maintainer

undefined symbols when compiling with mold linker

When using the mold linker, all of Kea compiles fine, except for lease_query:

make[6]: Entering directory 'kea/premium/src/hooks/dhcp/lease_query/libloadtests'
CXXLD    libdhcp_lease_query_unittests
mold: error: undefined symbol: isc::db::test::VALID_READONLY_DB
>>> referenced by generic_host_data_source_unittest.cc
>>>               ../../../../../../src/lib/dhcpsrv/testutils/.libs/libdhcpsrvtest.a(libdhcpsrvtest_la-generic_host_data_source_unittest.o):(isc::dhcp::test::GenericHostDataSourceTest::testReadOnlyDatabase(char const*))
mold: error: undefined symbol: isc::db::test::VALID_NAME
>>> referenced by generic_host_data_source_unittest.cc
>>>               ../../../../../../src/lib/dhcpsrv/testutils/.libs/libdhcpsrvtest.a(libdhcpsrvtest_la-generic_host_data_source_unittest.o):(isc::dhcp::test::GenericHostDataSourceTest::testReadOnlyDatabase(char const*))
mold: error: undefined symbol: isc::db::test::VALID_HOST
>>> referenced by generic_host_data_source_unittest.cc
>>>               ../../../../../../src/lib/dhcpsrv/testutils/.libs/libdhcpsrvtest.a(libdhcpsrvtest_la-generic_host_data_source_unittest.o):(isc::dhcp::test::GenericHostDataSourceTest::testReadOnlyDatabase(char const*))
mold: error: undefined symbol: isc::db::test::VALID_READONLY_USER
>>> referenced by generic_host_data_source_unittest.cc
>>>               ../../../../../../src/lib/dhcpsrv/testutils/.libs/libdhcpsrvtest.a(libdhcpsrvtest_la-generic_host_data_source_unittest.o):(isc::dhcp::test::GenericHostDataSourceTest::testReadOnlyDatabase(char const*))
mold: error: undefined symbol: isc::db::test::connectionString[abi:cxx11](char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*, char const*)
>>> referenced by generic_host_data_source_unittest.cc
>>>               ../../../../../../src/lib/dhcpsrv/testutils/.libs/libdhcpsrvtest.a(libdhcpsrvtest_la-generic_host_data_source_unittest.o):(isc::dhcp::test::GenericHostDataSourceTest::testReadOnlyDatabase(char const*))
mold: error: undefined symbol: isc::db::test::VALID_PASSWORD
>>> referenced by generic_host_data_source_unittest.cc
>>>               ../../../../../../src/lib/dhcpsrv/testutils/.libs/libdhcpsrvtest.a(libdhcpsrvtest_la-generic_host_data_source_unittest.o):(isc::dhcp::test::GenericHostDataSourceTest::testReadOnlyDatabase(char const*))
collect2: error: ld returned 1 exit status

Adding this line in src/hooks/dhcp/lease_query/libloadtests/Makefile.am solves it:

libdhcp_lease_query_unittests_LDADD  += $(top_builddir)/src/lib/database/testutils/libdatabasetest.la
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking