Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode OpenCV框架:未找到架构armv7的符号_Xcode_Opencv - Fatal编程技术网

Xcode OpenCV框架:未找到架构armv7的符号

Xcode OpenCV框架:未找到架构armv7的符号,xcode,opencv,Xcode,Opencv,我已经从OpenCV中获得了该文件,并将其添加到我的项目中。但是,尝试编译项目时会出现以下错误: Undefined symbols for architecture armv7: "std::__1::__vector_base_common<true>::__throw_length_error() const", referenced from: std::__1::vector<unsigned long, std::__1::allocator<

我已经从OpenCV中获得了该文件,并将其添加到我的项目中。但是,尝试编译项目时会出现以下错误:

Undefined symbols for architecture armv7:
  "std::__1::__vector_base_common<true>::__throw_length_error() const", referenced from:
      std::__1::vector<unsigned long, std::__1::allocator<unsigned long> >::__append(unsigned long) in opencv2(matrix.o)
      std::__1::vector<cv::Vec<int, 128>, std::__1::allocator<cv::Vec<int, 128> > >::__append(unsigned long) in opencv2(matrix.o)
      std::__1::vector<cv::Vec<int, 64>, std::__1::allocator<cv::Vec<int, 64> > >::__append(unsigned long) in opencv2(matrix.o)
      std::__1::vector<cv::Vec<int, 32>, std::__1::allocator<cv::Vec<int, 32> > >::__append(unsigned long) in opencv2(matrix.o)
      std::__1::vector<cv::Vec<int, 16>, std::__1::allocator<cv::Vec<int, 16> > >::__append(unsigned long) in opencv2(matrix.o)
      std::__1::vector<cv::Vec<int, 12>, std::__1::allocator<cv::Vec<int, 12> > >::__append(unsigned long) in opencv2(matrix.o)
      std::__1::vector<cv::Vec<int, 9>, std::__1::allocator<cv::Vec<int, 9> > >::__append(unsigned long) in opencv2(matrix.o)
      ...
  "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::basic_string(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
      cv::Exception::Exception(int, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) in opencv2(system.o)
      cv::error(cv::Exception const&) in opencv2(system.o)
      _cvRegisterModule in opencv2(system.o)
  "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::operator=(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)", referenced from:
      cv::Exception::formatMessage() in opencv2(system.o)
  "_OBJC_CLASS_$_ALAssetsLibrary", referenced from:
      objc-class-ref in opencv2(cap_ios_video_camera.o)
  "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__init(char const*, unsigned long)", referenced from:
      cv::sum(cv::_InputArray const&) in opencv2(stat.o)
      cv::countNonZero(cv::_InputArray const&) in opencv2(stat.o)
      cv::mean(cv::_InputArray const&, cv::_InputArray const&) in opencv2(stat.o)
      cv::meanStdDev(cv::_InputArray const&, cv::_OutputArray const&, cv::_OutputArray const&, cv::_InputArray const&) in opencv2(stat.o)
      cv::minMaxIdx(cv::_InputArray const&, double*, double*, int*, int*, cv::_InputArray const&) in opencv2(stat.o)
      cv::minMaxLoc(cv::_InputArray const&, double*, double*, cv::Point_<int>*, cv::Point_<int>*, cv::_InputArray const&) in opencv2(stat.o)
      cv::norm(cv::_InputArray const&, int, cv::_InputArray const&) in opencv2(stat.o)
      ...
  "std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::~basic_string()", referenced from:
      cv::sum(cv::_InputArray const&) in opencv2(stat.o)
      cv::countNonZero(cv::_InputArray const&) in opencv2(stat.o)
      cv::mean(cv::_InputArray const&, cv::_InputArray const&) in opencv2(stat.o)
      cv::meanStdDev(cv::_InputArray const&, cv::_OutputArray const&, cv::_OutputArray const&, cv::_InputArray const&) in opencv2(stat.o)
      cv::minMaxIdx(cv::_InputArray const&, double*, double*, int*, int*, cv::_InputArray const&) in opencv2(stat.o)
      cv::minMaxLoc(cv::_InputArray const&, double*, double*, cv::Point_<int>*, cv::Point_<int>*, cv::_InputArray const&) in opencv2(stat.o)
      cv::norm(cv::_InputArray const&, int, cv::_InputArray const&) in opencv2(stat.o)
      ...
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)
架构armv7的未定义符号: “标准::_1::_向量u基u公共::_抛出u长度u错误()常量”,引用自: opencv2(matrix.o)中的std::_1::vector::_追加(无符号长) opencv2(matrix.o)中的std::_1::vector::_追加(无符号长) opencv2(matrix.o)中的std::_1::vector::_追加(无符号长) opencv2(matrix.o)中的std::_1::vector::_追加(无符号长) opencv2(matrix.o)中的std::_1::vector::_追加(无符号长) opencv2(matrix.o)中的std::_1::vector::_追加(无符号长) opencv2(matrix.o)中的std::_1::vector::_追加(无符号长) ... “std::uu 1::基本字符串::基本字符串(std::u 1::基本字符串常量&)”,引用自: cv::Exception::Exception(int,std::uuu 1::basic_u字符串常量&,std::uuu 1::basic_u字符串常量&,std:uuu 1::basic_u字符串常量&,int)在opencv2(system.o)中 opencv2(system.o)中的cv::error(cv::Exception const&) _opencv2(system.o)中的cvRegisterModule “std::uu 1::基本字符串::运算符=(std::u 1::基本字符串常量&)”,引用自: opencv2(system.o)中的cv::Exception::formatMessage() “_OBJC_CLASS_$_ALAssetsLibrary”,引用自: opencv2中的objc类引用(cap_ios_video_camera.o) “标准::_1::基本字符串::_init(字符常量*,无符号长)”,引用自: opencv2(stat.o)中的cv::sum(cv:_inputarrayconst&) opencv2(stat.o)中的cv::countNonZero(cv:_inputarrayconst&) cv::opencv2(stat.o)中的平均值(cv:_inputarrayconst&,cv:_inputarrayconst&) 在opencv2(stat.o)中的cv::meanstdev(cv:_inputarrayconst&,cv:_outputarrayconst&,cv:_outputarrayconst&,cv:_inputarrayconst&) opencv2(stat.o)中的cv::minMaxIdx(cv:_inputarrayconst&,double*,double*,int*,int*,cv:_inputarrayconst&) opencv2(stat.o)中的cv::minMaxLoc(cv:_inputarrayconst&,double*,double*,cv::Point*,cv::Point*,cv:_inputarrayconst&) opencv2(stat.o)中的cv::norm(cv:_inputarrayconst&,int,cv:_inputarrayconst&) ... “std::uu 1::basic_string::~basic_string()”,引用自: opencv2(stat.o)中的cv::sum(cv:_inputarrayconst&) opencv2(stat.o)中的cv::countNonZero(cv:_inputarrayconst&) cv::opencv2(stat.o)中的平均值(cv:_inputarrayconst&,cv:_inputarrayconst&) 在opencv2(stat.o)中的cv::meanstdev(cv:_inputarrayconst&,cv:_outputarrayconst&,cv:_outputarrayconst&,cv:_inputarrayconst&) opencv2(stat.o)中的cv::minMaxIdx(cv:_inputarrayconst&,double*,double*,int*,int*,cv:_inputarrayconst&) opencv2(stat.o)中的cv::minMaxLoc(cv:_inputarrayconst&,double*,double*,cv::Point*,cv::Point*,cv:_inputarrayconst&) opencv2(stat.o)中的cv::norm(cv:_inputarrayconst&,int,cv:_inputarrayconst&) ... ld:未找到架构armv7的符号 叮当声:错误:链接器命令失败,退出代码为1(使用-v查看调用) 在我的构建设置中,我只将构建活动体系结构设置为,但它仍然会发生。我需要做什么才能让OpenCV正常工作?我使用的是XCode 5,目标是iOS7

我已经准备好了

我也尝试过从源代码处编译OpenCV,但这会产生相同的错误


无论部署目标是iOS6还是ios7,都是一样的。

您应该检查两件事:

<>你试图使用OpenCV的C++部分,但是XCOD/CLAN是非常文字的。如果您链接的文件是
.m
文件,它会将其视为Objective-C。相反,我们希望将扩展名重命名为
.mm
或在右侧栏中调出文件的属性,然后为类型选择
Objective-C++Source
,将其视为Objective-C++文件

  • assetsbrary
    是在
    assetsbrary.framework
    中定义的,请将其添加到项目的链接二进制文件与库的步骤中


  • 你找到解决办法了吗?我错过了资产库。谢谢