[ 95%] Linking CXX executable ../bin/miral-test
cd /home/gerry/dev/projects/mir/miral/miral/BUILD/test && /usr/bin/cmake -E cmake_link_script CMakeFiles/miral-test.dir/link.txt --verbose=1
/usr/lib/ccache/c++ -pthread -g -Werror -Wall -pedantic -Wextra -fPIC -Wnon-virtual-dtor -std=c++14 -Wl,-z,defs CMakeFiles/miral-test.dir/mru_window_list.cpp.o CMakeFiles/miral-test.dir/active_outputs.cpp.o -o ../bin/miral-test -rdynamic -lmir-test-assist -lmirserver -lmircommon -lmirplatform -lmircommon -lmirclient -lmircommon ../gmock/libs/gtest/libgtest.a ../gmock/libs/gtest/libgtest_main.a ../gmock/libs/libgmock.a ../gmock/libs/libgmock_main.a ../lib/libmiral.so.1 ../miral/libmiral-internal.a -lmirclient -lmircommon -Wl,-rpath,/home/gerry/dev/projects/mir/miral/miral/BUILD/lib
CMakeFiles/miral-test.dir/mru_window_list.cpp.o: In function `(anonymous namespace)::StubSession::StubSession(int)':
/home/gerry/dev/projects/mir/miral/miral/test/mru_window_list.cpp:35: undefined reference to `mir::test::doubles::StubSession::StubSession(int)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o: In function `mir::test::doubles::StubSession::~StubSession()':
/usr/include/mirtest/mir/test/doubles/stub_session.h:31: undefined reference to `vtable for mir::test::doubles::StubSession'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o: In function `mir::test::doubles::StubSurface::StubSurface()':
/usr/include/mirtest/mir/test/doubles/stub_surface.h:31: undefined reference to `vtable for mir::test::doubles::StubSurface'
/usr/include/mirtest/mir/test/doubles/stub_surface.h:31: undefined reference to `vtable for mir::test::doubles::StubSurface'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x20): undefined reference to `mir::test::doubles::StubSession::get_surface(mir::IntWrapper<mir::frontend::detail::SessionsSurfaceIdTag, int>) const'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x28): undefined reference to `mir::test::doubles::StubSession::get_buffer_stream(mir::IntWrapper<mir::frontend::detail::SessionsBufferStreamIdTag, int>) const'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x30): undefined reference to `mir::test::doubles::StubSession::create_buffer_stream(mir::graphics::BufferProperties const&)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x38): undefined reference to `mir::test::doubles::StubSession::destroy_buffer_stream(mir::IntWrapper<mir::frontend::detail::SessionsBufferStreamIdTag, int>)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x40): undefined reference to `mir::test::doubles::StubSession::name[abi:cxx11]() const'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x48): undefined reference to `mir::test::doubles::StubSession::send_display_config(mir::graphics::DisplayConfiguration const&)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x50): undefined reference to `mir::test::doubles::StubSession::drop_outstanding_requests()'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x58): undefined reference to `mir::test::doubles::StubSession::process_id() const'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x60): undefined reference to `mir::test::doubles::StubSession::take_snapshot(std::function<void (mir::scene::Snapshot const&)> const&)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x68): undefined reference to `mir::test::doubles::StubSession::default_surface() const'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x70): undefined reference to `mir::test::doubles::StubSession::set_lifecycle_state(MirLifecycleState)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x78): undefined reference to `mir::test::doubles::StubSession::hide()'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x80): undefined reference to `mir::test::doubles::StubSession::show()'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x88): undefined reference to `mir::test::doubles::StubSession::start_prompt_session()'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x90): undefined reference to `mir::test::doubles::StubSession::stop_prompt_session()'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x98): undefined reference to `mir::test::doubles::StubSession::suspend_prompt_session()'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0xa0): undefined reference to `mir::test::doubles::StubSession::resume_prompt_session()'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0xa8): undefined reference to `mir::test::doubles::StubSession::create_surface(mir::scene::SurfaceCreationParameters const&, std::shared_ptr<mir::frontend::EventSink> const&)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0xb0): undefined reference to `mir::test::doubles::StubSession::destroy_surface(mir::IntWrapper<mir::frontend::detail::SessionsSurfaceIdTag, int>)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0xc0): undefined reference to `mir::test::doubles::StubSession::surface_after(std::shared_ptr<mir::scene::Surface> const&) const'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0xc8): undefined reference to `mir::test::doubles::StubSession::configure_streams(mir::scene::Surface&, std::vector<mir::shell::StreamSpecification, std::allocator<mir::shell::StreamSpecification> > const&)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0xd0): undefined reference to `mir::test::doubles::StubSession::destroy_surface(std::weak_ptr<mir::scene::Surface> const&)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0xd8): undefined reference to `mir::test::doubles::StubSession::send_input_device_change(std::vector<std::shared_ptr<mir::input::Device>, std::allocator<std::shared_ptr<mir::input::Device> > > const&)'
CMakeFiles/miral-test.dir/mru_window_list.cpp.o:(.data.rel.ro+0x150): undefined reference to `typeinfo for mir::test::doubles::StubSession'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::ActiveOutputs::ActiveOutputs()':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:62: undefined reference to `mir_test_framework::HeadlessTest::HeadlessTest()'
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:62: undefined reference to `mir::test::doubles::FakeDisplay::FakeDisplay(std::vector<mir::geometry::Rectangle, std::allocator<mir::geometry::Rectangle> > const&)'
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:63: undefined reference to `mir_test_framework::AsyncServerRunner::add_to_environment(char const*, char const*)'
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:62: undefined reference to `mir_test_framework::HeadlessTest::~HeadlessTest()'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::ActiveOutputs::SetUp()':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:69: undefined reference to `mir_test_framework::HeadlessTest::preset_display(std::shared_ptr<mir::graphics::Display> const&)'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::ActiveOutputs::update_outputs(std::vector<mir::geometry::Rectangle, std::allocator<mir::geometry::Rectangle> > const&)::{lambda()#1}::operator()() const':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:87: undefined reference to `mir::test::Signal::raise()'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::ActiveOutputs::update_outputs(std::vector<mir::geometry::Rectangle, std::allocator<mir::geometry::Rectangle> > const&)':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:89: undefined reference to `mir::test::doubles::StubDisplayConfig::StubDisplayConfig(std::vector<mir::geometry::Rectangle, std::allocator<mir::geometry::Rectangle> > const&)'
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:90: undefined reference to `mir::test::doubles::FakeDisplay::emit_configuration_change_event(std::shared_ptr<mir::graphics::DisplayConfiguration> const&)'
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:93: undefined reference to `mir::test::Signal::raised()'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::ActiveOutputs::invert_outputs_in_base_configuration()::{lambda()#1}::operator()() const':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:99: undefined reference to `mir::test::Signal::raise()'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::ActiveOutputs::invert_outputs_in_base_configuration()':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:110: undefined reference to `mir::test::Signal::raised()'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::RunServer::RunServer(mir_test_framework::HeadlessTest*)':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:116: undefined reference to `mir_test_framework::AsyncServerRunner::start_server()'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::RunServer::~RunServer()':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:117: undefined reference to `mir_test_framework::AsyncServerRunner::stop_server()'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `(anonymous namespace)::ActiveOutputs::~ActiveOutputs()':
/home/gerry/dev/projects/mir/miral/miral/test/active_outputs.cpp:59: undefined reference to `mir_test_framework::HeadlessTest::~HeadlessTest()'
CMakeFiles/miral-test.dir/active_outputs.cpp.o:(.data.rel.ro+0xb0): undefined reference to `typeinfo for mir_test_framework::HeadlessTest'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `mir::test::doubles::FakeDisplay::~FakeDisplay()':
/usr/include/mirtest/mir/test/doubles/fake_display.h:36: undefined reference to `vtable for mir::test::doubles::FakeDisplay'
CMakeFiles/miral-test.dir/active_outputs.cpp.o: In function `mir::test::doubles::StubDisplayConfig::~StubDisplayConfig()':
/usr/include/mirtest/mir/test/doubles/stub_display_configuration.h:46: undefined reference to `vtable for mir::test::doubles::StubDisplayConfig'
collect2: error: ld returned 1 exit status
test/CMakeFiles/miral-test.dir/build.make:126: recipe for target 'bin/miral-test' failed
make[2]: *** [bin/miral-test] Error 1
make[2]: Leaving directory '/home/gerry/dev/projects/mir/miral/miral/BUILD'
CMakeFiles/Makefile2:480: recipe for target 'test/CMakeFiles/miral-test.dir/all' failed
make[1]: *** [test/CMakeFiles/miral-test.dir/all] Error 2
make[1]: Leaving directory '/home/gerry/dev/projects/mir/miral/miral/BUILD'
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2