C++解析fits格式CCfits库编译流程(Linux和Windows)
准备内容
-
cfitsio源码:FITSIO Home Page (nasa.gov)
-
ccfits源码:CCfits: C++ Wrappers for the cfitsio library (nasa.gov)
-
windows下需要额外准备zlib库,源码:zlib Home Site
-
windows下需要装cmake,此处不赘述
Linux下编译
Linux下编译比较简单,以cfitsio-4.0.0和ccfits-2.6为例:
1、解压cfitsio-4.0.0.tar.gz后,进入cfitsio-4.0.0,打开终端,依次执行:
./configure --prefix=usr/local/LIBS/cfitsio make make install
其中--prefix指定的是安装路径,即编译完成后进行install时会把include和lib文件夹复制到该路径下,建议新建一个cfitsio文件夹来统一存放include和lib文件夹,后面编译ccfits时配置cfitsio路径只需要写cfitsio文件夹路径即可,否则要分别配置cfitsio的include和lib文件夹。
2、解压CCfits-2.6.tar.gz后,进入CCfits-2.6,打开终端,依次执行:
./configure --with-cfitsio=usr/local/LIBS/cfitsio --prefix=usr/local/LIBS/ccfits make make install
--with-cfitsio配置刚才cfitsio安装的路径,如果include和lib文件夹不在一起,则使用
--with-cfitsio-include --with-cfitsio-libdir
分别配置即可。
至此ccfits安装完成。
Windows下编译
Windows下编译较为复杂,以zlib-1.2.11、cfitsio-4.0.0和ccfits-2.6为例:
1、先安装zlib库,解压zlib1211.zip后,在zlib-1.2.11文件夹同级新建一个build文件夹,可以叫做“zlib.build”:
进入zlib.build文件夹,打开终端,依次执行:
cmake ..\zlib -DCMAKE_INSTALL_PREFIX=d:\LIBS\zlib
-DCMAKE_INSTALL_PREFIX配置的是安装路径,同样是include和lib文件夹的存放路径,方便调用,还可以加-G参数指定编译器,默认为VS,可以通过-G"MinGW Makefiles"指定使用MinGW编译:
cmake ..\zlib -G"MinGW Makefiles -DCMAKE_INSTALL_PREFIX=d:\LIBS\zlib
生成build文件后,进行编译和安装即可:
cmake --build . --config Release cmake --install .
2、安装cfitsio,解压cfitsio-4.0.0.tar.gz后,建一个和cfitsio-4.0.0文件夹同级的文件夹,比如“cfitsio.build”
同样进入cfitsio.build文件夹,打开终端:
cmake ..\cfitsio-4.0.0 -DCMAKE_PREFIX_PATH=d:\LIBS\zlib -DCMAKE_INSTALL_PREFIX=d:\LIBS\cfitsio
-DCMAKE_PREFIX_PATH指定zlib路径,因为cfitsio依赖zlib库,-DCMAKE_INSTALL_PREFIX指定cfitsio的安装路径
接下来同样:
cmake --build . --config Release cmake --install .
3、安装ccfits,解压CCfits-2.6.tar.gz后,同样新建build文件夹,叫做“ccfits.build”吧
进入ccfits.build文件夹,打开终端:
cmake ..\CCfits-2.6 -DCMAKE_PREFIX_PATH=d:\LIBS\cfitsio -DCMAKE_INSTALL_PREFIX=d:\LIBS\ccfits
-DCMAKE_PREFIX_PATH指定cfitsio路径,因为ccfits依赖cfitsio库,-DCMAKE_INSTALL_PREFIX指定ccfits的安装路径
接下来同样:
cmake --build . --config Release cmake --install .
至此ccfits安装完毕。
最后附一个ccfits的官方文档地址,查询使用方法:CCfits: CCfits Documentation (nasa.gov)