You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Question]: <title>使用 Anolis OS 8.8 编译 obproxy。master分支,编译构建出现如下报错,请帮忙排查 #43
referenced by test_event_processor.cpp:147
test_event_processor.o:(oceanbase::obproxy::TestEventProcessor::check_start(oceanbase::obproxy::TestFuncParam*))
referenced by test_event_processor.cpp:152
test_event_processor.o:(oceanbase::obproxy::TestEventProcessor::check_start(oceanbase::obproxy::TestFuncParam*))
referenced by test_event_processor.cpp:156
test_event_processor.o:(oceanbase::obproxy::TestEventProcessor::check_start(oceanbase::obproxy::TestFuncParam*))
referenced 130 more times
referenced by test_event.cpp:93
test_event.o:(oceanbase::obproxy::TestEvent::check_schedule_common(oceanbase::obproxy::TestFuncParam*, int))
referenced by test_event.cpp:94
test_event.o:(oceanbase::obproxy::TestEvent::check_schedule_common(oceanbase::obproxy::TestFuncParam*, int))
referenced by test_event.cpp:95
test_event.o:(oceanbase::obproxy::TestEvent::check_schedule_common(oceanbase::obproxy::TestFuncParam*, int))
referenced 50 more times
referenced by test_ethread.cpp:126
test_ethread.o:(oceanbase::obproxy::TestEThread::check_thread_spawn_thread_internal(oceanbase::obproxy::TestFuncParam*))
referenced by test_ethread.cpp:127
test_ethread.o:(oceanbase::obproxy::TestEThread::check_thread_spawn_thread_internal(oceanbase::obproxy::TestFuncParam*))
referenced by test_ethread.cpp:128
test_ethread.o:(oceanbase::obproxy::TestEThread::check_thread_spawn_thread_internal(oceanbase::obproxy::TestFuncParam*))
referenced 92 more times
referenced by test_priority_event_queue.cpp:87
test_priority_event_queue.o:(oceanbase::obproxy::TestPriorityEventQueue::clear_priority_event_queue(oceanbase::obproxy::event::ObPriorityEventQueue*))
referenced by test_priority_event_queue.cpp:102
test_priority_event_queue.o:(oceanbase::obproxy::TestPriorityEventQueue::clear_event_arrays(oceanbase::obproxy::event::ObEvent**))
referenced by test_priority_event_queue.cpp:193
test_priority_event_queue.o:(oceanbase::obproxy::TestPriorityEventQueue::check_enqueue_result(long, oceanbase::obproxy::event::ObEvent*))
referenced 18 more times
referenced by gtest.h:1382 (/code/obproxy/deps/3rd/usr/local/oceanbase/deps/devel/include/gtest/gtest.h:1382)
test_priority_event_queue.o:(testing::AssertionResult testing::internal::CmpHelperEQFailure<int, unsigned int>(char const*, char const*, int const&, unsigned int const&))
referenced by gtest.h:1382 (/code/obproxy/deps/3rd/usr/local/oceanbase/deps/devel/include/gtest/gtest.h:1382)
test_priority_event_queue.o:(testing::AssertionResult testing::internal::CmpHelperEQFailure<long, unsigned int>(char const*, char const*, long const&, unsigned int const&))
referenced by gtest.h:1382 (/code/obproxy/deps/3rd/usr/local/oceanbase/deps/devel/include/gtest/gtest.h:1382)
test_priority_event_queue.o:(testing::AssertionResult testing::internal::CmpHelperEQFailure<long, long long>(char const*, char const*, long const&, long long const&))
referenced 3 more times
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:1364:test_priority_event_queue] 错误 1
ld.lld: error: undefined symbol: testing::Message::GetString() const
referenced by gtest.h:323 (/code/obproxy/deps/3rd/usr/local/oceanbase/deps/devel/include/gtest/gtest.h:323)
test_unix_net_processor.o:(testing::AssertionResult::AppendMessage(testing::Message const&))
referenced by test_unix_net_processor.cpp:628
test_unix_net_processor.o:(oceanbase::obproxy::TestUnixNetProcessor::check_accept(oceanbase::obproxy::net::ObNetProcessor::ObAcceptOptions&, long))
referenced by test_unix_net_processor.cpp:756
test_unix_net_processor.o:(oceanbase::obproxy::TestUnixNetProcessor::common_hot_upgrade(char const*, int, long))
referenced by test_unix_net_processor.cpp:774
test_unix_net_processor.o:(oceanbase::obproxy::TestUnixNetProcessor::common_hot_upgrade(char const*, int, long))
referenced 13 more times
referenced by test_io_buffer.cpp:96
test_io_buffer.o:(oceanbase::obproxy::TestIOBuffer::check_data_alloc(oceanbase::obproxy::event::ObIOBufferData*, long))
referenced by test_io_buffer.cpp:99
test_io_buffer.o:(oceanbase::obproxy::TestIOBuffer::check_data_alloc(oceanbase::obproxy::event::ObIOBufferData*, long))
referenced by test_io_buffer.cpp:104
test_io_buffer.o:(oceanbase::obproxy::TestIOBuffer::check_block_clear(oceanbase::obproxy::event::ObIOBufferBlock*))
referenced 78 more times
referenced by test_unix_net.cpp:710
test_unix_net.o:(oceanbase::obproxy::TestUnixNet::check_read_result(int))
referenced by test_unix_net.cpp:714
test_unix_net.o:(oceanbase::obproxy::TestUnixNet::check_read_result(int))
referenced by test_unix_net.cpp:718
test_unix_net.o:(oceanbase::obproxy::TestUnixNet::check_read_result(int))
referenced 16 more times
Activity
angelra1994 commentedon May 14, 2023
CXXLD test_continuation
CXXLD test_protected_queue
CXXLD test_priority_event_queue
CXXLD test_io_buffer
CXXLD test_unix_net_processor
CXXLD test_unix_net
ld.lld: error: undefined symbol: testing::Message::GetString() const
ld.lld: error: undefined symbol: testing::internal::GetBoolAssertionFailureMessage(testing::AssertionResult const&, char const*, char const*, char const*)
ld.lld: error: undefined symbol: testing::internal::EqFailure(char const*, char const*, std::string const&, std::string const&, bool)
ld.lld: error: undefined symbol: testing::internal::GetBoolAssertionFailureMessage(testing::AssertionResult const&, char const*, char const*, char const*)
ld.lld: error: undefined symbol: testing::internal::EqFailure(char const*, char const*, std::string const&, std::string const&, bool)
ld.lld: error: undefined symbol: testing::internal::EqFailure(char const*, char const*, std::string const&, std::string const&, bool)
ld.lld: error: undefined symbol: testing::internal::GetBoolAssertionFailureMessage(testing::AssertionResult const&, char const*, char const*, char const*)
ld.lld: error: undefined symbol: testing::internal::EqFailure(char const*, char const*, std::string const&, std::string const&, bool)
ld.lld: error: undefined symbol: testing::internal::GetBoolAssertionFailureMessage(testing::AssertionResult const&, char const*, char const*, char const*)
ld.lld: error: undefined symbol: testing::internal::EqFailure(char const*, char const*, std::string const&, std::string const&, bool)
ld.lld: error: undefined symbol: testing::internal::GetBoolAssertionFailureMessage(testing::AssertionResult const&, char const*, char const*, char const*)
ld.lld: error: undefined symbol: testing::internal::EqFailure(char const*, char const*, std::string const&, std::string const&, bool)
ld.lld: error: undefined symbol: testing::internal::GetBoolAssertionFailureMessage(testing::AssertionResult const&, char const*, char const*, char const*)
ld.lld: error: undefined symbol: testing::internal::EqFailure(char const*, char const*, std::string const&, std::string const&, bool)
ld.lld: error: undefined symbol: testing::internal::GetBoolAssertionFailureMessage(testing::AssertionResult const&, char const*, char const*, char const*)
ld.lld: error: undefined symbol: testing::internal::EqFailure(char const*, char const*, std::string const&, std::string const&, bool)
angelra1994 commentedon May 14, 2023
obproxy的 build.sh 做了如下修改
longdafeng commentedon May 16, 2023
@angelra1994 It seems you have fixed this issue. Could you please propose one pull request
angelra1994 commentedon May 16, 2023
抱歉,目前暂未找到修复办法,但是有复现方法。
donghy-coredumped commentedon May 16, 2023
91b2414 这样试一试呢
angelra1994 commentedon May 16, 2023
@donghy-coredumped 好像还是报类似的错误
angelra1994 commentedon May 16, 2023
目前看应该是 只有构建 foo_server 失败了


在 unittest/obproxy 目录中只有139个文件
angelra1994 commentedon May 16, 2023
但是将 configure.ac 中 60行61行

AM_CXXFLAGS="${AM_CXXFLAGS} -fuse-ld=lld -ffunction-sections -Wl,--no-warn-symbol-ordering,--symbol-ordering-file,${ac_abs_confdir}/hotfuncs.txt"
AM_CFLAGS="${AM_CFLAGS} -fuse-ld=lld -ffunction-sections -Wl,--no-warn-symbol-ordering,--symbol-ordering-file,${ac_abs_confdir}/hotfuncs.txt"
如注释掉,则可以成功编译,如
在 unittest/obproxy 目录中是140个文件

我之前没有接触过c++,不了解其中机制。希望大佬们解惑
donghy-coredumped commentedon May 17, 2023
./build.sh clean 之后再重新编译也还是报错吗?
angelra1994 commentedon May 17, 2023