Home > Enterprise >  C together with SCIP on a Mac: Undefined symbols for architecture x86_64
C together with SCIP on a Mac: Undefined symbols for architecture x86_64

Time:04-13

So I'm running into an Error when trying to compile a rather large project by me on a macOS when the code just runs fine on a Linux computer.

The exact error message is:

Undefined symbols for architecture x86_64:
"soplex::Param::epsilon()", referenced from:
      soplex::SPxLPBase<boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)0> >::printProblemStatistics(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) in libcommon.a(benders_fp_program.cc.o)
      soplex::SPxLPBase<boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)0> >::changeElement(int, int, boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)0> const&, bool) in libcommon.a(benders_fp_program.cc.o)
      soplex::SLUFactorRational::SLUFactorRational(soplex::SLUFactorRational const&) in libcommon.a(benders_fp_program.cc.o)
      soplex::SPxLPBase<boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)0> >::printProblemStatistics(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) in libcommon.a(conshdlr_mybenders.cc.o)
      soplex::SPxLPBase<boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)0> >::changeElement(int, int, boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)0> const&, bool) in libcommon.a(conshdlr_mybenders.cc.o)
      soplex::SLUFactorRational::SLUFactorRational(soplex::SLUFactorRational const&) in libcommon.a(conshdlr_mybenders.cc.o)
      soplex::SPxLPBase<boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)0> >::printProblemStatistics(std::__1::basic_ostream<char, std::__1::char_traits<char> >&) in libcommon.a(benders_assign_program.cc.o)
      ...

  "___gmpq_neg", referenced from:
      boost::multiprecision::backends::gmp_rational::negate() in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::negate() in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::negate() in libcommon.a(benders_assign_program.cc.o)
  "___gmpq_set", referenced from:
      boost::multiprecision::backends::gmp_rational::gmp_rational(boost::multiprecision::backends::gmp_rational const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(boost::multiprecision::backends::gmp_rational const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::gmp_rational(boost::multiprecision::backends::gmp_rational const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(boost::multiprecision::backends::gmp_rational const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::gmp_rational(boost::multiprecision::backends::gmp_rational const&) in libcommon.a(benders_assign_program.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(boost::multiprecision::backends::gmp_rational const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpq_set_d", referenced from:
      boost::multiprecision::backends::gmp_rational::operator=(double) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(double) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(double) in libcommon.a(benders_assign_program.cc.o)
  "___gmpq_set_si", referenced from:
      boost::multiprecision::backends::gmp_rational::operator=(long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpq_set_str", referenced from:
      boost::multiprecision::backends::gmp_rational::operator=(char const*) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(char const*) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(char const*) in libcommon.a(benders_assign_program.cc.o)
  "___gmpq_sub", referenced from:
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_rational const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_rational const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&) in libcommon.a(benders_assign_program.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_rational const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpq_swap", referenced from:
      boost::multiprecision::backends::gmp_rational::operator=(boost::multiprecision::backends::gmp_rational&&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(boost::multiprecision::backends::gmp_rational&&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::operator=(boost::multiprecision::backends::gmp_rational&&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_add_ui", referenced from:
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_int&, unsigned long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_int&, unsigned long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_int&, unsigned long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_addmul_ui", referenced from:
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_assign_program.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_and", referenced from:
      boost::multiprecision::backends::eval_bitwise_and(boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_bitwise_and(boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_bitwise_and(boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_clear", referenced from:
      boost::multiprecision::backends::gmp_int::~gmp_int() in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::~gmp_int() in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::~gmp_int() in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_cmp", referenced from:
      boost::multiprecision::backends::gmp_int::compare(boost::multiprecision::backends::gmp_int const&) const in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::compare(boost::multiprecision::backends::gmp_int const&) const in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::compare(boost::multiprecision::backends::gmp_int const&) const in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_cmp_si", referenced from:
      boost::multiprecision::backends::gmp_int::compare(long) const in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::compare(long) const in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::compare(long) const in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_fdiv_q", referenced from:
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_assign_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_fits_uint_p", referenced from:
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_assign_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_gcd", referenced from:
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_gcd_ui", referenced from:
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_get_d", referenced from:
      boost::multiprecision::backends::eval_convert_to(double*, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_convert_to(double*, boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_convert_to(double*, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_get_ui", referenced from:
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_assign_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_init", referenced from:
      boost::multiprecision::backends::gmp_int::gmp_int() in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::operator=(double) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::operator=(boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::gmp_int() in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::operator=(double) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::operator=(boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::gmp_int() in libcommon.a(benders_assign_program.cc.o)
      ...
  "___gmpz_init_set_si", referenced from:
      boost::multiprecision::backends::gmp_rational::gmp_rational(long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::gmp_rational(long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::gmp_rational(long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_init_set_ui", referenced from:
      boost::multiprecision::backends::gmp_rational::gmp_rational(long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::gmp_int(unsigned long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_rational::gmp_rational(long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::gmp_int(unsigned long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_rational::gmp_rational(long) in libcommon.a(benders_assign_program.cc.o)
      boost::multiprecision::backends::gmp_int::gmp_int(unsigned long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_mul", referenced from:
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_mul_2exp", referenced from:
      void boost::multiprecision::backends::eval_left_shift<unsigned long>(boost::multiprecision::backends::gmp_int&, unsigned long) in libcommon.a(benders_fp_program.cc.o)
      void boost::multiprecision::backends::eval_left_shift<unsigned long>(boost::multiprecision::backends::gmp_int&, unsigned long) in libcommon.a(conshdlr_mybenders.cc.o)
      void boost::multiprecision::backends::eval_left_shift<unsigned long>(boost::multiprecision::backends::gmp_int&, unsigned long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_mul_ui", referenced from:
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_neg", referenced from:
      boost::multiprecision::backends::gmp_int::negate() in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::negate() in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::negate() in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_set", referenced from:
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, unsigned long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_multiply(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::number<boost::multiprecision::backends::gmp_int, (boost::multiprecision::expression_template_option)1> boost::multiprecision::numerator<(boost::multiprecision::expression_template_option)1>(boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)1> const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::number<boost::multiprecision::backends::gmp_int, (boost::multiprecision::expression_template_option)1> boost::multiprecision::denominator<(boost::multiprecision::expression_template_option)1>(boost::multiprecision::number<boost::multiprecision::backends::gmp_rational, (boost::multiprecision::expression_template_option)1> const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::operator=(boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_fp_program.cc.o)
      ...
  "___gmpz_set_d", referenced from:
      boost::multiprecision::backends::gmp_int::operator=(double) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::gmp_int::operator=(double) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::gmp_int::operator=(double) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_sizeinbase", referenced from:
      boost::multiprecision::backends::eval_msb(boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_msb(boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_msb(boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_submul_ui", referenced from:
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_add(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_assign_program.cc.o)
      boost::multiprecision::backends::eval_subtract(boost::multiprecision::backends::gmp_rational&, boost::multiprecision::backends::gmp_rational const&, long) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_tdiv_q", referenced from:
      boost::multiprecision::backends::eval_divide(boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_divide(boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_divide(boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&) in libcommon.a(benders_assign_program.cc.o)
  "___gmpz_tdiv_qr", referenced from:
      boost::multiprecision::backends::eval_qr(boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int&) in libcommon.a(benders_fp_program.cc.o)
      boost::multiprecision::backends::eval_qr(boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int&) in libcommon.a(conshdlr_mybenders.cc.o)
      boost::multiprecision::backends::eval_qr(boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int const&, boost::multiprecision::backends::gmp_int&, boost::multiprecision::backends::gmp_int&) in libcommon.a(benders_assign_program.cc.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]: *** [bin/fleet_planning_solver_r_set] Error 1
make[1]: *** [src/main/CMakeFiles/fleet_planning_solver_r_set.dir/all] Error 2
make: *** [all] Error 2

I already tried to reinstall scip, because soplex is the solver from scip and I tried reinstalling boost. But nothing is working.

On the internet I just found out that there seems to be missing something but I really don't know what, as like I said Scip and Boost are installing just fine without errors and the same Code is running on a Linux PC.

I'm running MacOS 12.3.1.

CodePudding user response:

It does seem like what you are missing is GMP. However it is certainly possible to compile SCIP and SoPlex without GMP. To help you it would be good if you could share more details about your build process (what buildsystem are you using, how are you compiling SCIP/SoPlex, ...)

CodePudding user response:

Thanks for the answer. GMP is also installed and found by SCIP. I'm building via cmake 3.21.3, my program as well as SCIP, which I downloaded from the SCIP website vie the scipoptsuite. In the suite SoPlex should be inserted, I don't think I did any extra compiling steps for that.

  • Related