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文件,进行修改如下:
ubuntu下Polyfit的源码编译

                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

ubuntu下Polyfit的源码编译

但是结果还是出错,郁闷,琢磨了好久,后来经过实验室主任(大家都叫主任,我也跟起来,(*^__^*) ),猜想是所有库都需要加-fPIC,一个一个加实属麻烦,所以之前说用cmake-gui,在CMAKE_CXX_FLAGS和CMAKE_C_FLAGS后面都加-fPIC,如下:

ubuntu下Polyfit的源码编译

至此Polyfit源码编译成功。