/usr/include/c++/8/cstdlib:75: error: stdlib.h: No such file or directory In file included from /usr/include/c++/8/ext/string_conversions.h:41, from /usr/include/c++/8/bits/basic_string.h:6400, from /usr/include/c++/8/string:52, from /usr/include/c++/8/stdexcept:39, from /usr/include/c++/8/array:39, from /usr/local/include/opencv4/opencv2/core/cvdef.h:781, from /usr/local/include/opencv4/opencv2/core.hpp:52, from /usr/local/include/opencv4/opencv2/opencv.hpp:52, from main.cpp:3: /usr/include/c++/8/cstdlib:75:15: fatal error: stdlib.h: No such file or directory #include_next ^~~~~~~~~~
原因,
由于前两天编译paddle项目的时候,采用的是gcc-8,而没有采用gcc-9,因此头文件的位置错误。
Linux中如何安装特定的gcc版本_高精度计算机视觉的博客-CSDN博客
在/usr目录下搜索发现,有/usr/include/c++/8/stdlib.h,/usr/include/c++/9/stdlib.h也有/usr/include/stdlib.h,而我已经设置了默认编译器为gcc-8,因此,需要把默认的头文件地址去掉,项目的.pro设置如下,
TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt
SOURCES += \
main.cpp
unix:!macx: LIBS += -L$$PWD/../../../../usr/local/lib/ -lopencv_world
INCLUDEPATH += $$PWD/../../../../usr/local/include/opencv4
DEPENDPATH += $$PWD/../../../../usr/local/include/opencv4
unix:!macx: LIBS += -L$$PWD/../../../../usr/lib/x86_64-linux-gnu/ -ltesseract
#INCLUDEPATH += $$PWD/../../../../usr/include
#DEPENDPATH += $$PWD/../../../../usr/include
INCLUDEPATH += /usr/include/c++/8
然后再编译,就没有问题了。
本文结束