我在 Mac OS X (10.8.4) 上安装了 CGAL。我已成功地将 CGAL 的各个方面合并到以前的 C++ 程序中来计算 3D 点云的凸包。然而,现在我试图包含 CGAL 的其他部分来计算表面网格,将它们转换为多面体,等等。当我这样做时,程序编译得很好,但随后我收到了我不理解的链接错误。
Undefined symbols for architecture x86_64:
"boost::detail::get_tss_data(void const*)", referenced from:
CGAL::Lazy, CGAL::Gmpq, CGAL::Lazy_exact_nt, CGAL::To_interval >::zero() in diffgeom.a(Particle.o)
boost::thread_specific_ptr, CGAL::Gmpq, CGAL::Lazy_exact_nt, CGAL::To_interval > >::reset(CGAL::Lazy, CGAL::Gmpq, CGAL::Lazy_exact_nt, CGAL::To_interval >*) in diffgeom.a(Particle.o)
CGAL::Lazy > >, CGAL::Point_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > >::zero() in diffgeom.a(Particle.o)
boost::thread_specific_ptr > >, CGAL::Point_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > > >::reset(CGAL::Lazy > >, CGAL::Point_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > >*) in diffgeom.a(Particle.o)
CGAL::Lazy > >, CGAL::Sphere_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > >::zero() in diffgeom.a(Particle.o)
boost::thread_specific_ptr > >, CGAL::Sphere_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > > >::reset(CGAL::Lazy > >, CGAL::Sphere_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > >*) in diffgeom.a(Particle.o)
"boost::detail::set_tss_data(void const*, boost::shared_ptr, void*, bool)", referenced from:
boost::thread_specific_ptr, CGAL::Gmpq, CGAL::Lazy_exact_nt, CGAL::To_interval > >::reset(CGAL::Lazy, CGAL::Gmpq, CGAL::Lazy_exact_nt, CGAL::To_interval >*) in diffgeom.a(Particle.o)
boost::thread_specific_ptr, CGAL::Gmpq, CGAL::Lazy_exact_nt, CGAL::To_interval > >::~thread_specific_ptr() in diffgeom.a(Particle.o)
boost::thread_specific_ptr > >, CGAL::Point_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > > >::reset(CGAL::Lazy > >, CGAL::Point_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > >*) in diffgeom.a(Particle.o)
boost::thread_specific_ptr > >, CGAL::Point_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > > >::~thread_specific_ptr() in diffgeom.a(Particle.o)
boost::thread_specific_ptr > >, CGAL::Sphere_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > > >::reset(CGAL::Lazy > >, CGAL::Sphere_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > >*) in diffgeom.a(Particle.o)
boost::thread_specific_ptr > >, CGAL::Sphere_3 >, CGAL::Gmpq, CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > > > >::~thread_specific_ptr() in diffgeom.a(Particle.o)
"_mpfr_clear", referenced from:
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > > (CGAL::Sphere_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > >::operator() >(CGAL::Sphere_3 const&) const in diffgeom.a(Particle.o)
CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > >::operator()(CGAL::Point_3 > const&) const in diffgeom.a(Particle.o)
CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > >::operator()(CGAL::Sphere_3 > const&) const in diffgeom.a(Particle.o)
CGAL::Lazy_rep_1, CGAL::Gmpq, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 >, CGAL::To_interval, CGAL::Sphere_3 >::update_exact() const in diffgeom.a(Particle.o)
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_z_3 > > (CGAL::Point_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_z_3 > >::operator() >(CGAL::Point_3 const&) const in diffgeom.a(Particle.o)
CGAL::Lazy_rep_1, CGAL::Gmpq, CGAL::CartesianKernelFunctors::Compute_z_3 > >, CGAL::CartesianKernelFunctors::Compute_z_3 >, CGAL::To_interval, CGAL::Point_3 >::update_exact() const in diffgeom.a(Particle.o)
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_y_3 > > (CGAL::Point_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_y_3 > >::operator() >(CGAL::Point_3 const&) const in diffgeom.a(Particle.o)
...
"_mpfr_get_d", referenced from:
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > > (CGAL::Sphere_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > >::operator() >(CGAL::Sphere_3 const&) const in diffgeom.a(Particle.o)
CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > >::operator()(CGAL::Point_3 > const&) const in diffgeom.a(Particle.o)
CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > >::operator()(CGAL::Sphere_3 > const&) const in diffgeom.a(Particle.o)
CGAL::Lazy_rep_1, CGAL::Gmpq, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 >, CGAL::To_interval, CGAL::Sphere_3 >::update_exact() const in diffgeom.a(Particle.o)
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_z_3 > > (CGAL::Point_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_z_3 > >::operator() >(CGAL::Point_3 const&) const in diffgeom.a(Particle.o)
CGAL::Lazy_rep_1, CGAL::Gmpq, CGAL::CartesianKernelFunctors::Compute_z_3 > >, CGAL::CartesianKernelFunctors::Compute_z_3 >, CGAL::To_interval, CGAL::Point_3 >::update_exact() const in diffgeom.a(Particle.o)
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_y_3 > > (CGAL::Point_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_y_3 > >::operator() >(CGAL::Point_3 const&) const in diffgeom.a(Particle.o)
...
"_mpfr_init2", referenced from:
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > > (CGAL::Sphere_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > >::operator() >(CGAL::Sphere_3 const&) const in diffgeom.a(Particle.o)
CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > >::operator()(CGAL::Point_3 > const&) const in diffgeom.a(Particle.o)
CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > >::operator()(CGAL::Sphere_3 > const&) const in diffgeom.a(Particle.o)
CGAL::Lazy_rep_1, CGAL::Gmpq, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 >, CGAL::To_interval, CGAL::Sphere_3 >::update_exact() const in diffgeom.a(Particle.o)
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_z_3 > > (CGAL::Point_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_z_3 > >::operator() >(CGAL::Point_3 const&) const in diffgeom.a(Particle.o)
CGAL::Lazy_rep_1, CGAL::Gmpq, CGAL::CartesianKernelFunctors::Compute_z_3 > >, CGAL::CartesianKernelFunctors::Compute_z_3 >, CGAL::To_interval, CGAL::Point_3 >::update_exact() const in diffgeom.a(Particle.o)
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_y_3 > > (CGAL::Point_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_y_3 > >::operator() >(CGAL::Point_3 const&) const in diffgeom.a(Particle.o)
...
"_mpfr_set_q", referenced from:
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > > (CGAL::Sphere_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > >::operator() >(CGAL::Sphere_3 const&) const in diffgeom.a(Particle.o)
CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > >::operator()(CGAL::Point_3 > const&) const in diffgeom.a(Particle.o)
CGAL::Cartesian_converter, CGAL::Simple_cartesian >, CGAL::NT_converter > >::operator()(CGAL::Sphere_3 > const&) const in diffgeom.a(Particle.o)
CGAL::Lazy_rep_1, CGAL::Gmpq, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 > >, CGAL::CartesianKernelFunctors::Compute_squared_radius_3 >, CGAL::To_interval, CGAL::Sphere_3 >::update_exact() const in diffgeom.a(Particle.o)
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_z_3 > > (CGAL::Point_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_z_3 > >::operator() >(CGAL::Point_3 const&) const in diffgeom.a(Particle.o)
CGAL::Lazy_rep_1, CGAL::Gmpq, CGAL::CartesianKernelFunctors::Compute_z_3 > >, CGAL::CartesianKernelFunctors::Compute_z_3 >, CGAL::To_interval, CGAL::Point_3 >::update_exact() const in diffgeom.a(Particle.o)
CGAL::cpp11::result_of > >, CGAL::CartesianKernelFunctors::Compute_y_3 > > (CGAL::Point_3)>::type CGAL::Lazy_construction_nt > >, CGAL::CartesianKernelFunctors::Compute_y_3 > >::operator() >(CGAL::Point_3 const&) const in diffgeom.a(Particle.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: *[/Users/bullard/ShapeMetrology/Particle/bin/diffgeom] 错误 1