【问题标题】:SCIP 7.0.3 installing using cmake on macOS TBB errorSCIP 7.0.3 在 macOS TBB 错误上使用 cmake 安装
【发布时间】:2021-06-10 12:05:09
【问题描述】:

我正在尝试在我的 Mac 机器上构建 SCIP 7.0.3 opt 套件,但遇到了一些问题。

我正在使用 CMake 生成 make Makefile,一旦我输入 make,我在链接步骤中失败了。我在这里附上日志

Consolidate compiler generated dependencies of target papilolib
[100%] Linking CXX shared library ../../lib/libpapilo.dylib
ld: warning: object file (../libclusol.a(lusol.f90.o)) was built for newer macOS version (11.4) than being linked (11.0)
ld: warning: object file (../libclusol.a(lusol6b.f.o)) was built for newer macOS version (11.4) than being linked (11.0)
ld: warning: object file (../libclusol.a(lusol8b.f.o)) was built for newer macOS version (11.4) than being linked (11.0)
ld: warning: object file (../libclusol.a(lusol_util.f.o)) was built for newer macOS version (11.4) than being linked (11.0)
ld: warning: object file (../libclusol.a(lusol7b.f.o)) was built for newer macOS version (11.4) than being linked (11.0)
Undefined symbols for architecture x86_64:
  "tbb::interface5::internal::task_base::destroy(tbb::task&)", referenced from:
      void tbb::parallel_invoke<papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(), papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(), papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda1'()>(double const&, papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'() const&, papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'() const&, tbb::task_group_context&) in papilolib.cpp.o
      void tbb::parallel_invoke<papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(), papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(), papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda1'()>(double const&, papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'() const&, papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'() const&, tbb::task_group_context&) in papilolib.cpp.o
      void tbb::parallel_invoke<papilo::ConstraintMatrix<double>::compress(bool)::'lambda'(), papilo::ConstraintMatrix<double>::compress(bool)::'lambda0'()>(double const&, papilo::ConstraintMatrix<double>::compress(bool)::'lambda'() const&, tbb::task_group_context&) in papilolib.cpp.o
      void tbb::parallel_invoke<papilo::ConstraintMatrix<double>::compress(bool)::'lambda1'(), papilo::ConstraintMatrix<double>::compress(bool)::'lambda2'(), papilo::ConstraintMatrix<double>::compress(bool)::'lambda3'(), papilo::ConstraintMatrix<double>::compress(bool)::'lambda4'(), papilo::ConstraintMatrix<double>::compress(bool)::'lambda5'()>(double const&, papilo::ConstraintMatrix<double>::compress(bool)::'lambda1'() const&, papilo::ConstraintMatrix<double>::compress(bool)::'lambda2'() const&, papilo::ConstraintMatrix<double>::compress(bool)::'lambda3'() const&, papilo::ConstraintMatrix<double>::compress(bool)::'lambda4'() const&, tbb::task_group_context&) in papilolib.cpp.o
      void tbb::parallel_invoke<papilo::Problem<double>::compress(bool)::'lambda'(), papilo::Problem<double>::compress(bool)::'lambda0'(), papilo::Problem<double>::compress(bool)::'lambda1'()>(double const&, papilo::Problem<double>::compress(bool)::'lambda'() const&, papilo::Problem<double>::compress(bool)::'lambda0'() const&, tbb::task_group_context&) in papilolib.cpp.o
      
      void tbb::interface9::internal::dynamic_grainsize_mode<tbb::interface9::internal::adaptive_mode<tbb::interface9::internal::auto_partition_type> >::work_balance<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      void tbb::interface9::internal::partition_type_base<tbb::interface9::internal::auto_partition_type>::execute<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      ...
  "tbb::internal::concurrent_vector_base_v3::internal_capacity() const", referenced from:
      papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&) in papilolib.cpp.o
      papilo::DominatedCols<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&) in papilolib.cpp.o
      papilo::Sparsify<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&) in papilolib.cpp.o
  "tbb::internal::allocate_continuation_proxy::allocate(unsigned long) const", referenced from:
      void tbb::interface9::internal::partition_type_base<tbb::interface9::internal::auto_partition_type>::execute<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      void tbb::interface9::internal::dynamic_grainsize_mode<tbb::interface9::internal::adaptive_mode<tbb::interface9::internal::auto_partition_type> >::work_balance<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      void tbb::interface9::internal::partition_type_base<tbb::interface9::internal::auto_partition_type>::execute<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      void tbb::interface9::internal::dynamic_grainsize_mode<tbb::interface9::internal::adaptive_mode<tbb::interface9::internal::auto_partition_type> >::work_balance<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      void tbb::interface9::internal::partition_type_base<tbb::interface9::internal::auto_partition_type>::execute<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      void tbb::interface9::internal::dynamic_grainsize_mode<tbb::interface9::internal::adaptive_mode<tbb::interface9::internal::auto_partition_type> >::work_balance<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      void tbb::interface9::internal::partition_type_base<tbb::interface9::internal::auto_partition_type>::execute<tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>, tbb::blocked_range<int> >(double&, tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>&) in papilolib.cpp.o
      ...
  "tbb::internal::allocate_root_with_context_proxy::free(tbb::task&) const", referenced from:
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::DominatedCols<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::DominatedCols<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::DominatedCols<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::DominatedCols<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Sparsify<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::Sparsify<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      ...
  "tbb::internal::allocate_root_with_context_proxy::allocate(unsigned long) const", referenced from:
      void tbb::parallel_invoke<papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(), papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(), papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda1'()>(double const&, papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'() const&, papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'() const&, tbb::task_group_context&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      void tbb::parallel_invoke<papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(), papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(), papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda1'()>(double const&, papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'() const&, papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'() const&, tbb::task_group_context&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::ParallelColDetection<double>::computeColHashes(papilo::ConstraintMatrix<double> const&, std::__1::vector<double, std::__1::allocator<double> > const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::Probing<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::DominatedCols<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, papilo::DominatedCols<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'(tbb::blocked_range<int> const&) const&, tbb::auto_partitioner const&) in papilolib.cpp.o
      ...
  "typeinfo for tbb::task", referenced from:
      typeinfo for tbb::empty_task in papilolib.cpp.o
      typeinfo for tbb::internal::function_invoker<papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda1'()> in papilolib.cpp.o
      typeinfo for tbb::internal::function_invoker<papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda0'()> in papilolib.cpp.o
      typeinfo for tbb::interface9::internal::start_for<tbb::blocked_range<int>, papilo::ParallelRowDetection<double>::computeRowHashes(papilo::ConstraintMatrix<double> const&, unsigned int*)::'lambda'(tbb::blocked_range<int> const&), tbb::auto_partitioner const> in papilolib.cpp.o
      typeinfo for tbb::interface9::internal::flag_task in papilolib.cpp.o
      typeinfo for tbb::internal::function_invoker<papilo::ParallelRowDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda'()> in papilolib.cpp.o
      typeinfo for tbb::internal::function_invoker<papilo::ParallelColDetection<double>::execute(papilo::Problem<double> const&, papilo::ProblemUpdate<double> const&, papilo::Num<double> const&, papilo::Reductions<double>&)::'lambda1'()> in papilolib.cpp.o
      ...
  "__gfortran_generate_error", referenced from:
      ___lusol_MOD_lu1rec in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu6chk.constprop.0 in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu8rpc in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu1fac in libclusol.a(lusol.f90.o)
  "__gfortran_st_write", referenced from:
      ___lusol_MOD_lu1rec in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu6chk.constprop.0 in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu8rpc in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu1fac in libclusol.a(lusol.f90.o)
      _lu6prt_ in libclusol.a(lusol6b.f.o)
      _lu8mod_ in libclusol.a(lusol8b.f.o)
      _lu8adc_ in libclusol.a(lusol8b.f.o)
      ...
  "__gfortran_st_write_done", referenced from:
      ___lusol_MOD_lu1rec in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu6chk.constprop.0 in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu8rpc in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu1fac in libclusol.a(lusol.f90.o)
      _lu6prt_ in libclusol.a(lusol6b.f.o)
      _lu8mod_ in libclusol.a(lusol8b.f.o)
      _lu8adc_ in libclusol.a(lusol8b.f.o)
      ...
  "__gfortran_stop_string", referenced from:
      ___lusol_MOD_lu8rpc in libclusol.a(lusol.f90.o)
  "__gfortran_transfer_array_write", referenced from:
      _lu6prt_ in libclusol.a(lusol6b.f.o)
  "__gfortran_transfer_character_write", referenced from:
      ___lusol_MOD_lu6chk.constprop.0 in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu8rpc in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu1fac in libclusol.a(lusol.f90.o)
      _lu7rnk_ in libclusol.a(lusol_util.f.o)
      _lu6chk_ in libclusol.a(lusol_util.f.o)
      _lu1fad_ in libclusol.a(lusol_util.f.o)
      _lu1fac_ in libclusol.a(lusol_util.f.o)
      ...
  "__gfortran_transfer_integer_write", referenced from:
      ___lusol_MOD_lu1rec in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu6chk.constprop.0 in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu8rpc in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu1fac in libclusol.a(lusol.f90.o)
      _lu6prt_ in libclusol.a(lusol6b.f.o)
      _lu8mod_ in libclusol.a(lusol8b.f.o)
      _lu8adc_ in libclusol.a(lusol8b.f.o)
      ...
  "__gfortran_transfer_logical_write", referenced from:
      ___lusol_MOD_lu1rec in libclusol.a(lusol.f90.o)
      _lu1rec_ in libclusol.a(lusol_util.f.o)
  "__gfortran_transfer_real_write", referenced from:
      ___lusol_MOD_lu8rpc in libclusol.a(lusol.f90.o)
      ___lusol_MOD_lu1fac in libclusol.a(lusol.f90.o)
      _lu6prt_ in libclusol.a(lusol6b.f.o)
      _lu8adc_ in libclusol.a(lusol8b.f.o)
      _lu8adr_ in libclusol.a(lusol8b.f.o)
      _lu1fad_ in libclusol.a(lusol_util.f.o)
      _lu1fac_ in libclusol.a(lusol_util.f.o)
      ...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [lib/libpapilo.dylib] Error 1
make[1]: *** [papilo/binaries/CMakeFiles/papilolib.dir/all] Error 2
make: *** [all] Error 2

我在我的 Mac 上使用命令 brew install tbb 安装了 TBB

上面的日志必须在中间修剪,因为我无法粘贴完整的日志。

完整日志https://pastebin.com/p7YL4161

编辑:我使用的是 macOS 最新版本和我的cmake -DCMAKE_BUILD_TYPE=Release -DIPOPT=off ..

-- Build type: Release
SoPlex with Boost CPP multiprecision libraries.
-- Could NOT find Quadmath (missing: Quadmath_LIBRARY Quadmath_INCLUDE_DIR) 
-- Found Boost: /usr/local/lib/cmake/Boost-1.76.0/BoostConfig.cmake (found suitable version "1.76.0", minimum required is "1.58.0") found components: program_options 
-- Found Boost: /usr/local/lib/cmake/Boost-1.76.0/BoostConfig.cmake (found version "1.76.0")  
-- Could NOT find Quadmath (missing: Quadmath_LIBRARY Quadmath_INCLUDE_DIR) 
-- Git hash: e567fef
-- Build shared libraries: ON
-- Build type: Release
-- Finding ZLIB
-- Finding ZLIB - found
-- Finding Readline
-- Finding Readline - found
-- Finding GMP
-- Finding GMP - found
-- Finding PAPILO
-- Finding PAPILO - found
-- Finding Solver "spx"
-- Finding Soplex
-- Finding SOPLEX - found
-- Support CLP: OFF
-- Support CPLEX: OFF
-- Support GLOP: OFF
-- Support GUROBI: OFF
-- Support XPRESS: OFF
-- Support MOSEK: OFF
-- Support QSO: OFF
-- Finding symmetry computation program "bliss"
-- Finding BLISS
-- Could NOT find BLISS (missing: BLISS_INCLUDE_DIR BLISS_INCLUDE_DIRS BLISS_LIBRARIES BLISS_DEFINITIONS) 
-- Finding BLISS - not found
-- CodeCoverage: OFF
-- Finding ZIMPL
-- Finding ZIMPL - found
-- Support IPOPT: OFF
-- Support WORHP: OFF
-- Looking for FE_DOWNWARD
-- Looking for FE_DOWNWARD - found
-- Finding CRITERION
-- Could NOT find CRITERION (missing: CRITERION_LIBRARY CRITERION_INCLUDE_DIR) 
-- Finding CRITERION - not found
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
-- Could NOT find CRITERION (missing: CRITERION_LIBRARY CRITERION_INCLUDE_DIR) 
-- Support AMPL: OFF
-- Build shared libraries: ON
-- Build type: Release
-- Found PkgConfig: /usr/local/bin/pkg-config (found version "0.29.2") 
-- Found GSL: /usr/local/Cellar/gsl/2.6/include (found suitable version "2.6", minimum required is "2.0") 
-- Could NOT find CLIQUER (missing: CLIQUER_INCLUDE_DIRS CLIQUER_LIBRARIES) 
-- Could NOT find BLISS (missing: BLISS_INCLUDE_DIR BLISS_INCLUDE_DIRS BLISS_LIBRARIES BLISS_DEFINITIONS) 
-- Found Boost: /usr/local/lib/cmake/Boost-1.76.0/BoostConfig.cmake (found version "1.76.0") found components: iostreams serialization program_options 
-- Performing Test PAPILO_USE_BOOST_IOSTREAMS_WITH_ZLIB
-- Performing Test PAPILO_USE_BOOST_IOSTREAMS_WITH_ZLIB - Success
-- Performing Test PAPILO_USE_BOOST_IOSTREAMS_WITH_BZIP2
-- Performing Test PAPILO_USE_BOOST_IOSTREAMS_WITH_BZIP2 - Success
-- Linking solvers: SCIP;SoPlex
-- The following OPTIONAL packages have been found:

 * Threads
 * BLAS
 * PkgConfig
 * GSL (required version >= 2.0)

-- The following REQUIRED packages have been found:

 * BISON
 * FLEX
 * TBB
 * Readline
 * PAPILO
 * ZIMPL
 * ZLIB
 * GMP
 * SCIP
 * SOPLEX
 * boost_headers (required version == 1.76.0)
 * Boost

-- The following OPTIONAL packages have not been found:

 * Quadmath
 * CRITERION
 * CLIQUER
 * HMETIS
 * BLISS

-- Configuring done
-- Generating done
-- Build files have been written to: /Users/username/Downloads/scipoptsuite-7.0.3/build

【问题讨论】:

    标签: scip


    【解决方案1】:

    编译失败,因为您的 tbb 库中缺少内部函数。

    TBB 基于 oneapi 从 tbb -> oneTBB 进行了切换。我们目前不支持 oneTBB,但正在努力。

    https://formulae.brew.sh/formula/tbbtbb 链接到 oneTBB,所以你需要安装 tbb@2020 (https://formulae.brew.sh/formula/tbb@2020)。

    也许您需要在此之前删除或取消链接 tbb 以使构建运行。由于缓存问题,请记住在尝试重新编译之前删除构建目录。

    你能不能尝试一下,然后报告它是否有效。

    菲利普

    【讨论】:

    • 我遇到了一些问题,因为 SCIP 提供的 CmakeLists.txt 找不到 tbb@2020。我想我必须解决一些问题。
    • 这很奇怪.. 我会看看我们的 testmac,看看我是否发现 tbb@2020 发生了奇怪的事情。
    • 构建 TBB 的一些额外日志失败(第 5 行)。 pastebin.com/JPqaDAXH
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-20
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-15
    相关资源
    最近更新 更多