当我编译CGAL程序时,出现了班轮错误,我不知道如何弄明白。这是错误报告:
Undefined symbols for architecture x86_64:
"boost::detail::get_tss_data(void const*)", referenced from:
boost::thread_specific_ptr<CGAL::Random>::get() const in CircleIntersect-ff9ac1.o
"boost::detail::set_tss_data(void const*, boost::shared_ptr<boost::detail::tss_cleanup_function>, void*, bool)", referenced from:
boost::thread_specific_ptr<CGAL::Random>::reset(CGAL::Random*) in CircleIntersect-ff9ac1.o
boost::thread_specific_ptr<CGAL::Random>::~thread_specific_ptr() in CircleIntersect-ff9ac1.o
"___gmpq_add", referenced from:
CGAL::operator+(CGAL::Gmpq const&, CGAL::Gmpq const&) in CircleIntersect-ff9ac1.o
"___gmpq_clear", referenced from:
CGAL::Gmpq_rep::~Gmpq_rep() in CircleIntersect-ff9ac1.o
"___gmpq_cmp", referenced from:
CGAL::Gmpq::operator<(CGAL::Gmpq const&) const in CircleIntersect-ff9ac1.o
"___gmpq_cmp_si", referenced from:
CGAL::Gmpq::operator==(int) const in CircleIntersect-ff9ac1.o
"___gmpq_div", referenced from:
CGAL::operator/(CGAL::Gmpq const&, CGAL::Gmpq const&) in CircleIntersect-ff9ac1.o
"___gmpq_equal", referenced from:
CGAL::Gmpq::operator==(CGAL::Gmpq const&) const in CircleIntersect-ff9ac1.o
"___gmpq_get_d", referenced from:
CGAL::Gmpq::to_double() const in CircleIntersect-ff9ac1.o
"___gmpq_init", referenced from:
CGAL::Gmpq_rep::Gmpq_rep() in CircleIntersect-ff9ac1.o
"___gmpq_mul", referenced from:
CGAL::operator*(CGAL::Gmpq const&, CGAL::Gmpq const&) in CircleIntersect-ff9ac1.o
"___gmpq_neg", referenced from:
CGAL::Gmpq::operator-() const in CircleIntersect-ff9ac1.o
"___gmpq_set_d", referenced from:
CGAL::Gmpq::Gmpq(double) in CircleIntersect-ff9ac1.o
"___gmpq_set_si", referenced from:
CGAL::Gmpq::Gmpq(int) in CircleIntersect-ff9ac1.o
"___gmpq_sub", referenced from:
CGAL::operator-(CGAL::Gmpq const&, CGAL::Gmpq const&) in CircleIntersect-ff9ac1.o
"_mpfr_clear", referenced from:
CGAL::Real_embeddable_traits<CGAL::Gmpq>::To_interval::operator()(CGAL::Gmpq const&) const in CircleIntersect-ff9ac1.o
"_mpfr_get_d", referenced from:
CGAL::Real_embeddable_traits<CGAL::Gmpq>::To_interval::operator()(CGAL::Gmpq const&) const in CircleIntersect-ff9ac1.o
"_mpfr_init2", referenced from:
CGAL::Real_embeddable_traits<CGAL::Gmpq>::To_interval::operator()(CGAL::Gmpq const&) const in CircleIntersect-ff9ac1.o
"_mpfr_set_q", referenced from:
CGAL::Real_embeddable_traits<CGAL::Gmpq>::To_interval::operator()(CGAL::Gmpq const&) const in CircleIntersect-ff9ac1.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
根据这份报告,我已经安装了GMPQ和boost库,并使用CMake编译我的CGAL程序,但链接器错误仍然存在。该代码用于计算圆和线段之间的交集。