Skip to content

QUICStreamVCAdapter.cc:27: undefined reference to `VIO::VIO()' #8686

@bneradt

Description

@bneradt

Clang 13.0.1 currently presents a few warnings for our master branch. These are addressed in #8685. However, after these compiler warnings are addressed, the following linker error is produced:

  CXXLD    traffic_server/traffic_server
/usr/bin/ld: ../iocore/net/quic/libquic.a(QUICStreamVCAdapter.o): in function `QUICStreamVCAdapter':
/var/tmp/trafficserver/iocore/net/quic/QUICStreamVCAdapter.cc:27: undefined reference to `VIO::VIO()'
/usr/bin/ld: /var/tmp/trafficserver/iocore/net/quic/QUICStreamVCAdapter.cc:27: undefined reference to `VIO::VIO()'
clang-13: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [Makefile:2142: traffic_server/traffic_server] Error 1
make[2]: Leaving directory '/var/tmp/trafficserver/src'
make[1]: *** [Makefile:2813: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/trafficserver/src'
make: *** [Makefile:874: all-recursive] Error 1

This can be reproduced with the CI's fedora:36 Docker image like so:

docker pull controller.trafficserver.org/ats/fedora:36
docker run -it controller.trafficserver.org/ats/fedora:36 /bin/bash
cd /var/tmp
git clone https://github.com/apache/trafficserver.git
cd trafficserver

# Apply the patch from #8685.

export CC="clang"
export CXX="clang++"
export CXXFLAGS="-Qunused-arguments"
export WITH_LIBCPLUSPLUS="yes"

autoreconf -fiv
./configure --with-openssl=/opt/openssl-quic --enable-experimental-plugins --enable-example-plugins --prefix=/tmp/ats/ --enable-werror --enable-debug --enable-wccp --enable-luajit --enable-ccache
make -j4 V=1 Q=

Metadata

Metadata

Assignees

No one assigned

    Labels

    Buildwork related to build configuration or environment

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions