C1189 #error: core.hpp header must be compiled as C++ Project1 D:\opencv1\opencv\build\include\opencv2\core.hpp 49
时间: 2023-09-05 22:13:11 浏览: 148
这个错误是由于在使用OpenCV时,将C++代码文件(.cpp或.cxx)与C代码文件(.c)混合编译导致的。OpenCV的头文件core.hpp需要使用C++编译器进行编译,而你的项目可能使用了C编译器。
要解决这个问题,你可以按照以下步骤进行操作:
1. 确保你的项目是使用C++进行编译的,而不是C。在VS2019中,你可以在项目属性(Project Properties)中设置编译器选项。请确保你的项目属性中的“C/C++”选项卡中的“常规”下的“语言”选项设置为“ISO C++17 标准 (/std:c++17)”或者更高的版本。
2. 确认你的源代码文件使用了正确的文件扩展名。C++源文件应该使用.cpp或.cxx作为文件扩展名,而不是.c。
3. 检查你的代码文件中是否包含了C语言的头文件(如stdio.h、stdlib.h等)。如果有,请将其替换为对应的C++头文件(如cstdio、cstdlib等)。
4. 确保你的OpenCV库和头文件是完整正确的。有时候下载和解压缩OpenCV库时可能会出错,导致一些头文件不完整或损坏。你可以重新下载并解压缩OpenCV库,然后将正确的路径配置到你的项目中。
如果你仍然遇到问题,请检查你的代码和项目设置,确保没有其他地方导致了此错误。如果问题仍然存在,请提供更多的代码和项目配置信息,以便我们更好地帮助你解决问题。
相关问题
fatal error: stack.hpp: 没有那个文件或目录 2 | #include "stack.hpp" | ^~~~~~~~~~~ compilation terminated.
根据引用[1]和引用[2]的内容,这个错误可能是由于opencv库的地址没有正确设置导致的。你可以使用CMAKE GUI软件来检查opencv库的地址是否正确填写在OPECV_DIR中,并确保在VS的属性配置器中的附加包含目录中包含了该路径。
另外,根据引用[3]的内容,这个错误可能是由于缺少boost/shared_ptr.hpp文件导致的。你需要确保你正确设置了boost文件的路径,并让PCLHeader.h文件知道boost文件的位置。
综上所述,你需要检查opencv库的地址和boost文件的路径是否正确设置,并确保相关文件在正确的位置。这样应该能够解决你遇到的错误。
fatal error: wrappers.hpp: No such file or directory
根据提供的引用内容,出现"fatal error: wrappers.hpp: No such file or directory"错误通常是由于编译器无法找到所需的头文件而导致的。这个错误可能是由于以下几个原因引起的:
1. 头文件路径错误:编译器无法找到wrappers.hpp头文件,可能是因为头文件路径设置不正确。您可以检查头文件路径是否正确,并确保编译器能够找到该文件。
2. 头文件未安装:如果wrappers.hpp头文件确实不存在于您的系统中,您需要确保已正确安装所需的库或软件包。您可以尝试重新安装相关的库或软件包,并确保安装过程中没有出现错误。
3. 编译器版本不兼容:有时,特定版本的编译器可能不兼容某些头文件。您可以尝试更新编译器版本或使用与wrappers.hpp头文件兼容的编译器。
以下是一个示例,演示了如何解决"fatal error: wrappers.hpp: No such file or directory"错误:
```shell
#include <wrappers.hpp>
// Your code here
int main() {
// Your code here
return 0;
}
```
请注意,上述示例代码中的`#include <wrappers.hpp>`是一个假设的头文件包含语句,您需要根据实际情况将其替换为您需要包含的头文件。