OSX10.7.4中的C ++未定义符号错误

时间:2012-06-22 00:51:16

标签: c++ macos linker clang

来自命令行clang++ vcfaltcount.cpp -o vcfac的以下调用产生以下错误/警告

>In file included from vcfaltcount.cpp:1:
./Variant.h:86:5: warning: control may reach end of non-void function [-Wreturn-type]
}

>Undefined symbols for architecture x86_64:
  "split(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&,                    std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)", referenced           from:
  _main in ccGOdUhH.o
  vcf::VariantCallFile::open(std::basic_string<char, std::char_traits<char>,     std::allocator<char> >&)in ccGOdUhH.o
 "vcf::VariantCallFile::getNextVariant(vcf::Variant&)", referenced from:
  _main in ccGOdUhH.o
  "vcf::VariantCallFile::parseHeader()", referenced from:
  vcf::VariantCallFile::openFile(std::basic_string<char, std::char_traits<char>,       std::allocator<char> >&)in ccGOdUhH.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status

关于“此类架构的未定义符号”还有许多其他帖子,我试图使用这些建议来成功编译。

我认为问题可能来自头文件variant.h。在源代码来自的API中有一个相应的variant.cpp文件,它定义了函数,这些函数只在variant.h中声明。我将这些定义移到了variant.h中。对我可能缺少什么的想法?如果需要,我可以提供标题,但它很长。感谢。

0 个答案:

没有答案
相关问题