所以......谁能看到我在这里做错了什么?!?我正在尝试使用http://heasarc.gsfc.nasa.gov/fitsio/CCfits/html/readimage.html上的示例读取*.fits
C++ 中的文件。CCfits
#include <iostream>
#include <valarray>
#include <CCfits/CCfits.h>
#include <CCfits/PHDU.h>
namespace fit = CCfits;
int main(int argc, char * argv[]) {
fit::FITS inFile(
"../data/example/example.fits",
fit::Read,
true
);
fit::PHDU & phdu = inFile.pHDU();
std::valarray<unsigned int> fitsImage;
phdu.read(fitsImage);
return 0;
}
我收到以下错误:
undefined reference to `void CCfits::PHDU::read<unsigned int>(std::valarray<unsigned int>&)'
collect2: error: ld returned 1 exit status
我正在链接这个:
g++ test.cpp -o test -L/usr/lib/x86_64-linux-gnu/ -std=c++11 -lCCfits -lcfitsio
虽然我看了看,/usr/include/CCfits/PHDU.h
它有这个:
template<typename S>
void read(std::valarray<S>& image);
有没有可能libCCfits
编译不正确?
(这与CCfits 库演示代码不起作用有关,但由于没有人真正对此进行扩展......我一无所有)。这让我发疯,我想我错过了一些非常明显的东西。
谢谢。