fatal error: sys/stst.h: 没有那个文件或目录 8 | #include<sys/stst.h> | ^~~~~~~~~~~~ compilation terminated.
时间: 2023-08-28 13:21:51 浏览: 42
这个错误提示是因为编译器无法找到名为"sys/stst.h"的头文件,可能是因为该头文件没有被正确安装或者路径没有添加到编译器的搜索路径中。您可以尝试检查一下是否正确安装了相应的库或者重新安装该库,或者在编译命令中添加该头文件所在目录的路径,例如:gcc -I/path/to/sys/stst.h file.c。希望能对您有所帮助。
相关问题
fatal error: opencv/cv.h: 没有那个文件或目录 8 | #include <opencv/cv.h> | ^~~~~~~~~~~~~
当出现错误消息"fatal error: opencv/cv.h: 没有那个文件或目录"时,这意味着编译器无法找到名为"cv.h"的文件。这通常是由于OpenCV版本的不兼容性或文件路径错误引起的。
在引用中提到了一些解决方法,让我们来看看:
1. 首先,尝试将代码中的 `#include <opencv/cv.h>` 替换为 `#include <opencv2/opencv.hpp>`。这是因为在更新的OpenCV版本中,头文件的位置可能已经发生了变化。
2. 如果你在使用的是OpenCV 4,在编译ORB SLAM时可能会遇到兼容性问题。这是因为ORB SLAM要求OpenCV 3.0版本。所以,即使你重新安装OpenCV 3,也无法解决这个问题。
3. 如果你尝试了上述方法仍然无效,那么你可能需要下载OpenCV 2.4.13.5的源代码版本,并使用该版本来编译你的代码。
4. 如果你使用了多个版本的OpenCV,并且想要在CMakeList.txt中使用特定版本,你可以使用`set(CMAKE_PREFIX_PATH "/your_opencv_path")`指定你想要使用的OpenCV版本的路径。
综上所述,解决"fatal error: opencv/cv.h: 没有那个文件或目录"错误的方法包括更改头文件的引用、降低OpenCV版本、使用指定路径的特定版本以及下载旧版本的源代码。
fatal error: opencv/cv.h: 没有那个文件或目录 18 | #include <opencv/cv.h> | ^~~~~~~~~~~~~
fatal error: opencv/cv.h: 没有那个文件或目录是由于编译器无法找到opencv/cv.h文件所引起的错误。这可能是由于opencv版本不兼容或者编译器无法正确设置opencv的头文件搜索路径导致的。
根据引用和引用中的错误提示信息,可以看出问题出在#include <opencv2/opencv.hpp>这行代码上。引用和引用中提到的错误提示中都出现了" No such file or directory",这意味着编译器无法找到opencv2/opencv.hpp文件。
而引用中提到,opencv头文件的路径中多了一个opencv4的文件夹,即/usr/include/opencv4/opencv2。这可能导致编译器在搜索opencv头文件时找不到正确的路径。
为了解决这个问题,你可以尝试以下几个方法:
1. 检查你的编译器是否正确设置了opencv的头文件搜索路径。确保路径包含了正确的opencv头文件所在的文件夹,比如/usr/include/opencv2。如果路径中包含了多余的文件夹,可以尝试将其删除或修改为正确的路径。
2. 检查你的系统中是否安装了正确版本的opencv。如果你的代码是为opencv4编写的,但是你的系统中安装的是opencv的其他版本,可能会导致头文件不匹配的问题。确保安装了与你的代码兼容的opencv版本,并且正确设置了相关的环境变量。
3. 如果以上方法都无效,你可以尝试手动复制opencv/cv.h文件到正确的路径中。首先找到opencv/cv.h文件所在的文件夹,然后将该文件复制到编译器能够搜索到的路径中。
需要注意的是,确保你的编译器与你使用的opencv版本兼容,并且正确设置了相关的环境变量和头文件搜索路径,这样才能正常编译和运行你的代码。