ubuntu下Polyfit的源码编译
记录自己的第一篇博客。。。
原论文网址:http://web.siat.ac.cn/~liangliang/publications/2017/polyfit/polyfit.html
配置的环境:ubuntu14.04 + cmake3.6
需要的依赖库:Qt + CGAL(由于之前需要已安装,在此先不赘述)
编译过程:1.首先安装cmake3.6后,要打开cmake-gui(编译起来更方便)。
在cmake3.6的安装包里找到bootstrap文件,进行修改如下:
2.cd PolyFit-master
mkdir build
cmake..
make
至此Polyfit.exe生成。
在编译过程中也走了弯路,在此记录一下:
起初直接在终端cmake,cmake过程顺利,但是make的时候,链接动态库libmath.so时出现relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
解决办法:按照网上找的方法应该在CXX_FLAGS后面加-fPIC,我只在math库里面手动在flags.make加了-fPIC
但是结果还是出错,郁闷,琢磨了好久,后来经过实验室主任(大家都叫主任,我也跟起来,(*^__^*) ),猜想是所有库都需要加-fPIC,一个一个加实属麻烦,所以之前说用cmake-gui,在CMAKE_CXX_FLAGS和CMAKE_C_FLAGS后面都加-fPIC,如下:
至此Polyfit源码编译成功。