【发布时间】:2009-03-12 18:42:02
【问题描述】:
好的,我当前项目的链接器有问题(这是另一个问题的延续,ish)
基本上,链接器在 dynamiclib.so 中给出了一个未定义的引用:
std::basic_ostream<char, std::char_traits<char> >& SparseImplementationLib::operator<< <double, double, SparseImplementationLib::DefaultPtr<double, double> >(std::basic_ostream<char, std::char_traits<char> >&, SparseImplementationLib::AbstractSparseNode<double, double, SparseImplementationLib::DefaultPtr<double, double> > const&)
而我只能找到:
std::ostream& SparseImplementationLib::operator<< <double, double, SparseImplementationLib::DefaultPtr<double, double> >(std::ostream&, SparseImplementationLib::AbstractSparseNode<double, double, SparseImplementationLib::DefaultPtr<double, double> > const&)
文件内。
事实上,它们是相同的方法(basic_ostream 和 ostream 可以互换?)
如果我手动将第一个方法添加到命名空间,它会抱怨它在编译时已经定义。
有人知道这里到底发生了什么吗?
干杯,埃德
注意,这是 MPICXX 和 CCMAKE
【问题讨论】: