Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 904665

Summary: net-dns/dnsdist-1.8.0 - dnsdist-lua.cc: error: libssl_init_server_context was not declared in this scope
Product: Gentoo Linux Reporter: Toralf Förster <toralf>
Component: Current packagesAssignee: Andreas Schürch <nativemad>
Status: CONFIRMED ---    
Severity: normal CC: holger, jy6x2b32pie9, nativemad, stevan
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 865117    
Attachments: emerge-info.txt
emerge-history.txt.bz2
environment
etc.clang.tar.bz2
etc.portage.tar.bz2
logs.tar.bz2
net-dns:dnsdist-1.8.0:20230419-023657.log
temp.tar.bz2

Description Toralf Förster gentoo-dev 2023-04-19 16:37:39 UTC
too long lines were shrinked:

x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE6
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE6
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE6
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE6
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE6
dnsdist-lua.cc: In lambda function:
dnsdist-lua.cc:2618:22: error: libssl_init_server_context was not declared in this scope
 2618 |           auto ctx = libssl_init_server_context(frontend->d_tlsConfig, ocspResponses);
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.1-j4-20230414-035505

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-pc-linux-gnu-10
 [2] x86_64-pc-linux-gnu-13 *
clang/llvm (if any):
clang version 16.0.1
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/lib/llvm/16/bin
Configuration file: /etc/clang/clang.cfg
/usr/lib/llvm/16
16.0.1
Python 3.10.11
Available Ruby profiles:
  [1]   ruby30 (with Rubygems) *
The following VMs are available for generation-2:
*)	Eclipse Temurin JDK 17.0.6_p10 [openjdk-bin-17]
Available Java Virtual Machines:
  [1]   openjdk-bin-17  system-vm

The Glorious Glasgow Haskell Compilation System, version 9.0.2
php cli (if any):
  [1]   php7.4
  [2]   php8.0
  [3]   php8.2 *
go version go1.20.3 linux/amd64

  HEAD of ::gentoo
commit 95677824c8db76ea4625495252f9126a4e471b91
Author: Repository mirror & CI <repomirrorci@gentoo.org>
Date:   Wed Apr 19 01:46:56 2023 +0000

    2023-04-19 01:46:55 UTC

emerge -qpvO net-dns/dnsdist
[ebuild  N    ] net-dns/dnsdist-1.8.0  USE="gnutls lmdb ssl -dnscrypt -dnstap -doh -regex -remote-logging -snmp -systemd -test" LUA_SINGLE_TARGET="lua5-1 -lua5-3 -lua5-4 -luajit"
Comment 1 Toralf Förster gentoo-dev 2023-04-19 16:37:40 UTC
Created attachment 860353 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2023-04-19 16:37:41 UTC
Created attachment 860354 [details]
emerge-history.txt.bz2
Comment 3 Toralf Förster gentoo-dev 2023-04-19 16:37:43 UTC
Created attachment 860355 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2023-04-19 16:37:43 UTC
Created attachment 860356 [details]
etc.clang.tar.bz2
Comment 5 Toralf Förster gentoo-dev 2023-04-19 16:37:44 UTC
Created attachment 860357 [details]
etc.portage.tar.bz2
Comment 6 Toralf Förster gentoo-dev 2023-04-19 16:37:45 UTC
Created attachment 860358 [details]
logs.tar.bz2
Comment 7 Toralf Förster gentoo-dev 2023-04-19 16:37:46 UTC
Created attachment 860359 [details]
net-dns:dnsdist-1.8.0:20230419-023657.log
Comment 8 Toralf Förster gentoo-dev 2023-04-19 16:37:47 UTC
Created attachment 860360 [details]
temp.tar.bz2
Comment 9 Holger Hoffstätte 2023-04-27 14:07:26 UTC
Works for me with gcc-13.1.0-r1, maybe it was caused by the prerelease?
Comment 10 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-04-28 09:03:52 UTC
(In reply to Holger Hoffstätte from comment #9)
> Works for me with gcc-13.1.0-r1, maybe it was caused by the prerelease?

I don't think the header deps have changed since then, it's quite sensitive to USE flags and such though as it's all about transitive header usage.
Comment 11 Stevan Bajić 2023-05-09 10:31:02 UTC
Got the same error with gcc (Gentoo 12.2.1_p20230304 p13) 12.2.1 20230304

Is there anything (logs, etc) that I can post here to help track down the issue?
Comment 12 Stevan Bajić 2023-05-09 16:39:10 UTC
Upgraded to newer version of GCC (Gentoo 12.2.1_p20230428-r1 p2) 12.2.1 20230428) and still facing same issue.


x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-lua-inspection.o dnsdist-lua-inspection.cc
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-lua-network.o dnsdist-lua-network.cc
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-lua-rules.o dnsdist-lua-rules.cc
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-lua-vars.o dnsdist-lua-vars.cc
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-lua-web.o dnsdist-lua-web.cc
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-lua.o dnsdist-lua.cc
dnsdist-lua.cc: In lambda function:
dnsdist-lua.cc:2618:22: error: ‘libssl_init_server_context’ was not declared in this scope
 2618 |           auto ctx = libssl_init_server_context(frontend->d_tlsConfig, ocspResponses);
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [Makefile:1542: dnsdist-lua.o] Error 1
make[2]: Leaving directory '/var/tmp/portage/net-dns/dnsdist-1.8.0/work/dnsdist-1.8.0'
make[1]: *** [Makefile:1685: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/net-dns/dnsdist-1.8.0/work/dnsdist-1.8.0'
make: *** [Makefile:1267: all] Error 2
 * ERROR: net-dns/dnsdist-1.8.0::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=net-dns/dnsdist-1.8.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=net-dns/dnsdist-1.8.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/net-dns/dnsdist-1.8.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/net-dns/dnsdist-1.8.0/temp/environment'.
 * Working directory: '/var/tmp/portage/net-dns/dnsdist-1.8.0/work/dnsdist-1.8.0'
 * S: '/var/tmp/portage/net-dns/dnsdist-1.8.0/work/dnsdist-1.8.0'
Comment 13 Stevan Bajić 2023-05-10 06:59:05 UTC
Switched to GCC (Gentoo 13.1.0-r1 p1) 13.1.0 and still having the problem. Looks like to not be GCC version related.

x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-lua.o dnsdist-lua.cc
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-mac-address.o dnsdist-mac-address.cc
dnsdist-lua.cc: In lambda function:
dnsdist-lua.cc:2618:22: error: ‘libssl_init_server_context’ was not declared in this scope
 2618 |           auto ctx = libssl_init_server_context(frontend->d_tlsConfig, ocspResponses);
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~
x86_64-pc-linux-gnu-g++ -std=c++17 -DHAVE_CONFIG_H -I.  -I. -I. -pthread   -I/usr/include/lua5.1  -I/usr/include/editline    -I./ext/yahttp    -I./ext/protozero/include -DSYSCONFDIR=\"/etc/dnsdist\" -DBOOST_CONTAINER_USE_STD_EXCEPTIONS         -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE  -fPIE -DPIE -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 --param ssp-buffer-size=4 -fstack-protector -g -O3 -Wall -Wextra -Wshadow -Wno-unused-parameter -Wmissing-declarations -Wredundant-decls -fvisibility=hidden -march=native -O2 -pipe -c -o dnsdist-nghttp2.o dnsdist-nghttp2.cc
make[2]: *** [Makefile:1542: dnsdist-lua.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: Leaving directory '/var/tmp/portage/net-dns/dnsdist-1.8.0/work/dnsdist-1.8.0'
make[1]: *** [Makefile:1685: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/net-dns/dnsdist-1.8.0/work/dnsdist-1.8.0'
make: *** [Makefile:1267: all] Error 2
 * ERROR: net-dns/dnsdist-1.8.0::gentoo failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=net-dns/dnsdist-1.8.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=net-dns/dnsdist-1.8.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/net-dns/dnsdist-1.8.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/net-dns/dnsdist-1.8.0/temp/environment'.
 * Working directory: '/var/tmp/portage/net-dns/dnsdist-1.8.0/work/dnsdist-1.8.0'
 * S: '/var/tmp/portage/net-dns/dnsdist-1.8.0/work/dnsdist-1.8.0'
Comment 14 Stevan Bajić 2023-05-10 07:51:03 UTC
emerging with USE="-gnutls" finishes without issues. I have gnutls and ssl use flags and without gnutls, the ebuild finishes without issues.
Comment 15 Andreas Schürch gentoo-dev 2024-02-18 11:43:26 UTC
I made a check in the 1.9.0 ebuild to prevent that gnutls and ssl get enabled at the same time.
Comment 16 jy6x2b32pie9 2024-03-24 19:05:17 UTC
Can reproduce problem with 1.8.0, 1.8.1 and also in 1.8.3, but not 1.9.0 nor 1.9.1

Suggest updating 1.8 line to 1.8.3 without IUSE=gnutls and to re-enable gnutls in 1.9.1
Comment 17 Andreas Schürch gentoo-dev 2024-04-09 20:42:49 UTC
(In reply to jy6x2b32pie9 from comment #16)
> Suggest updating 1.8 line to 1.8.3 without IUSE=gnutls and to re-enable
> gnutls in 1.9.1
Sorry, but without a good reason I'm not going to readd gnutls in the newer ebuilds. It adds quite much complexity for very little gain, as most optional dns protocols need openssl anyway.