✅ master分支无法通过ldbtoolchain编译第三方包

因为ldbtoolchain编译速度更快, 所以现在都是使用这个来编译. 在前几天合入 #18196后, Centos7 无法编译第三方包. 尝试更新ldbtoolchain到0.16也无法编译, 看release note, clang是15版本. 想请问现在该如何通过db方式编译第三方包和doris(master)?

...failed gcc.compile.c++ bin.v2/libs/locale/build/gcc-11/release/link-static/threading-multi/visibility-hidden/shared/localization_backend.o...
gcc.compile.c++ bin.v2/libs/filesystem/build/gcc-11/release/link-static/threading-multi/visibility-hidden/portability.o
gcc.compile.c++ bin.v2/libs/fiber/build/gcc-11/release/link-static/threading-multi/visibility-hidden/context.o
libs/fiber/src/context.cpp: In member function 'void boost::fibers::context::join()':
libs/fiber/src/context.cpp:195:21: error: 'boost::fibers::context::wait_queue_t' {aka 'class boost::intrusive::list<boost::fibers::context, boost::intrusive::function_hook<boost::fibers::detail::wait_functor>, boost::intrusive::constant_time_size<false> >'} has no member named 'suspend_and_wait'
  195 |         wait_queue_.suspend_and_wait( lk, active_ctx);
      |                     ^~~~~~~~~~~~~~~~
libs/fiber/src/context.cpp: In member function 'boost::context::fiber boost::fibers::context::terminate()':
libs/fiber/src/context.cpp:227:17: error: 'boost::fibers::context::wait_queue_t' {aka 'class boost::intrusive::list<boost::fibers::context, boost::intrusive::function_hook<boost::fibers::detail::wait_functor>, boost::intrusive::constant_time_size<false> >'} has no member named 'notify_all'
  227 |     wait_queue_.notify_all();
      |                 ^~~~~~~~~~
libs/fiber/src/context.cpp: At global scope:
libs/fiber/src/context.cpp:248:22: error: 'waker' has not been declared
  248 |                      waker && w) noexcept {
      |                      ^~~~~
libs/fiber/src/context.cpp:246:1: error: no declaration matches 'bool boost::fibers::context::wait_until(const time_point&, boost::fibers::detail::spinlock_lock&, int&&)'
  246 | context::wait_until( std::chrono::steady_clock::time_point const& tp,
      | ^~~~~~~
In file included from libs/fiber/src/context.cpp:7:
/root/master/thirdparty/installed/include/boost/fiber/context.hpp:298:10: note: candidates are: 'bool boost::fibers::context::wait_until(const time_point&, boost::fibers::detail::spinlock_lock&)'
  298 |     bool wait_until( std::chrono::steady_clock::time_point const&,
      |          ^~~~~~~~~~
libs/fiber/src/context.cpp:239:1: note:                 'bool boost::fibers::context::wait_until(const time_point&)'
  239 | context::wait_until( std::chrono::steady_clock::time_point const& tp) noexcept {
      | ^~~~~~~
In file included from libs/fiber/src/context.cpp:7:
/root/master/thirdparty/installed/include/boost/fiber/context.hpp:133:25: note: 'class boost::fibers::context' defined here
  133 | class BOOST_FIBERS_DECL context {
      |                         ^~~~~~~
libs/fiber/src/context.cpp:255:6: error: no declaration matches 'bool boost::fibers::context::wake(size_t)'
  255 | bool context::wake(const size_t epoch) noexcept
      |      ^~~~~~~
libs/fiber/src/context.cpp:255:6: note: no functions named 'bool boost::fibers::context::wake(size_t)'
In file included from libs/fiber/src/context.cpp:7:
/root/master/thirdparty/installed/include/boost/fiber/context.hpp:133:25: note: 'class boost::fibers::context' defined here
  133 | class BOOST_FIBERS_DECL context {
      |                         ^~~~~~~

    "g++"   -fvisibility-inlines-hidden -m64 -pthread -O3 -finline-functions -Wno-inline -Wall -fvisibility=hidden -std=c++17 -g -I/root/master/thirdparty/installed/include -L/root/master/thirdparty/installed/lib -DBOOST_ALL_NO_LIB=1 -DBOOST_ATOMIC_STATIC_LINK=1 -DBOOST_DISABLE_ASSERTS -DBOOST_FIBERS_SOURCE -DBOOST_FILESYSTEM_STATIC_LINK=1 -DNDEBUG  -I"."  -c -o "bin.v2/libs/fiber/build/gcc-11/release/link-static/threading-multi/visibility-hidden/context.o" "libs/fiber/src/context.cpp"

...failed gcc.compile.c++ bin.v2/libs/fiber/build/gcc-11/release/link-static/threading-multi/visibility-hidden/context.o...
...failed updating 23 targets...
...updated 56 targets...

重新更新一下代码

刷到最新依旧是卡在boost 1.81

[root@compile master]# git branch -v
* master         47aa8a6 [领先 3234] [fix](file_cache) turn on file cache by FE session variable (#18340)
[root@compile thirdparty]# tail -f log 
      |                                         ~~~~^~~

    "g++"   -fvisibility-inlines-hidden -m64 -pthread -O3 -finline-functions -Wno-inline -Wall -fvisibility=hidden -std=c++17 -g -I/root/master/thirdparty/installed/include -L/root/master/thirdparty/installed/lib -DBOOST_ALL_NO_LIB=1 -DBOOST_CONTAINER_STATIC_LINK=1 -DBOOST_JSON_SOURCE -DBOOST_JSON_STATIC_LINK=1 -DNDEBUG  -I"."  -c -o "bin.v2/libs/json/build/gcc-11/release/link-static/threading-multi/visibility-hidden/src.o" "libs/json/src/src.cpp"

...failed gcc.compile.c++ bin.v2/libs/json/build/gcc-11/release/link-static/threading-multi/visibility-hidden/src.o...
gcc.compile.c++ bin.v2/libs/locale/build/gcc-11/release/link-static/threading-multi/visibility-hidden/shared/mo_lambda.o
gcc.compile.c++ bin.v2/libs/regex/build/gcc-11/release/link-static/runtime-link-static/threading-multi/visibility-hidden/wide_posix_api.o
gcc.compile.c++ bin.v2/libs/regex/build/gcc-11/release/link-static/runtime-link-static/threading-multi/visibility-hidden/posix_api.o
...failed updating 20 targets...
...updated 52 targets..

得手动 rm -rf thirdparty/installed 目录之后,再编译,才会重新更新thirdparty库

可以了, 多谢 :+1: :+1: :+1:

可以直接从这里下载编译好de的三方库