Mac OS X 10.10 yosemite 上的 Dionysus Build/make 出现问题

Issue with Dionysus Build/make on Mac OS X 10.10 yosemite

本文关键字:make Build 问题 Dionysus OS yosemite 上的 Mac      更新时间:2023-10-16

我按照说明从 http://www.mrzv.org/software/dionysus/get-build-install.html 制作/建造狄俄尼索斯

从一台一无所有的全新电脑,我使用port来安装python27,cmake,boost,mercurial和其他一些软件包。在终端我然后做了

hg clone http://hg.mrzv.org/Dionysus/
cd Dionysus
hg up tip
mkdir build
cd build
cmake ..
make

当终端通过 make 运行时,它有以下错误:

  [  1%] Built target bottleneck-distance
  [  3%] Building CXX object  
 examples/alphashapes/CMakeFiles/alphashapes2d.dir/alphashapes2d.o
 In file included from   
/Users/pavan/Desktop/Dionysus/examples/alphashapes/alphashapes2d.cpp:3:
In file included from   
/Users/pavan/Desktop/Dionysus/examples/alphashapes/alphashapes2d.h:12:
In file included from   
/Users/pavan/Desktop/Dionysus/include/topology/simplex.h:221:
In file included from   
/Users/pavan/Desktop/Dionysus/include/topology/simplex.hpp:2:
In file included from /opt/local/include/boost/serialization/set.hpp:26: 
/opt/local/include/boost/serialization/detail/stack_constructor.hpp:54:31:     error: 
  no member named 'load_construct_data_adl' in namespace
  'boost::serialization'
    boost::serialization::load_construct_data_adl(
    ~~~~~~~~~~~~~~~~~~~~~~^
1 error generated.
make[2]: ***         [examples/alphashapes/CMakeFiles/alphashapes2d.dir/alphashapes2d.o] 
Error 1
make[1]: *** [examples/alphashapes/CMakeFiles/alphashapes2d.dir/all] 
Error 2
make: *** [all] Error 2

到目前为止,我已经尝试了我能想到的一切,重新安装了所有 boost 和 python 依赖项(从一台全新的恢复出厂设置的计算机开始)。当涉及到任何与 C 相关的内容时,我是一个完全的菜鸟,所以任何指针都将不胜感激。

另外,我在装有 ubuntu 的电脑上尝试了完全相同的安装并且它有效,所以我想知道端口安装功能是否会产生一些问题?

只是偶然发现了同样的问题。也使用 OSX 10.10。几天在 macports 和 brew 之间切换和操作库没有成功......

今天我终于用这种方式编译了狄俄尼索斯:

brew unlink boost
brew tap homebrew/versions
brew install boost155
brew link boost155

然而,必须看看整个库树(boost,cgal,swig,cgal-swig-bindings,dionysus)是否构建良好。

我也有类似的问题。我只是删除了显式命名空间(在 stack_constructor.hpp 中):

load_construct_data_adl

而不是

boost::serialization::load_construct_data_adl

这解决了我的情况中的错误。