天天看点

国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程

最近在国产系统上做开发,需要用到GEOS的开源库。但是国产系统还不是x86_amd64 架构,用的是国产飞腾FT2000CPU,此U是arm64架构,很多库没有,完全需要手动编译。

1、下载GEOS源码

GEOS3.8.2源码

国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程

2、下载cmake;

CMAKE3.20.3 GEOS的CmakeList.text 宏里设置了需要3.8.1以上版本的CMAKE,因麒麟系统自带的只有3.5.1;版本太低 无法编译。

国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程

3、编译CMAKE

cd 到 cmake-3.20.3目录下;

控制台 :

cmake .
make 
make install 
           

编译完成后 

国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程
国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程
国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程

此时cmake就安装在sur/local/bin里面了。跟系统自带的cmake不冲突,可以同时存在。

4、编译geos 

cd /home/greatwall/code/geos-3.8.2  //转到geos3.8.2的目录下
/usr/local/bin/cmake .   // 此步是使用刚编译的cmake 来编译geos
make  //编译
make install  //安装 bin lib include 
           
国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程
国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程
国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程

5、成果; 输入 make install ;或者指定安装位置

make DESTDIR=/home/greatwall/code/geos-3.8.2/bin_r

国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程
国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程
国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程
国产银河麒麟系统(arm64架构)上GEOS3.8.2编译流程

至此 geos 完全编译成果。其他的库也可以类似的编译。像gdal  opencv ....

继续阅读