Problem with including cstdlib library (No such file or directory)
-
wrote on 28 Nov 2020, 11:13 last edited by
Could you please provide the compiler output before and after the "stdlib.h: No such file or directory"? Usually there is more information like "included from..." so that you can figure out the whole chain of includes.
As a "shot in the dark" , issues which may create problems like yours could be:-
case sensitive include paths somewhere in your include tree (especially dangerous if you use libs which where developed on Windows)
-
something you you include uses absolute include paths (bad practice, should not happen in the libs you mentioned)
-
something you you include uses relative include paths for standard headers (also bad practice but ...)
btw, if you need something like
-L"/usr/include"
to make it work, I would be very wary. Adding an include dir for the linker makes no sense at all, as SGaist and jsulm explained above. -
-
wrote on 18 Jul 2021, 23:57 last edited by
It was a long time but... well many things happen and I had to abandon this project for some time but now I have to finish it.
Unfortunately I have also to set up my Linux (Ubuntu 20.0.4) anew, and installing all with terminal - I mean QT, QT creator, dev-essentials, etc. and the libraries for Interval.h to work (those according to this instruction: http://www.cs.put.poznan.pl/amarciniak/Interval_Arithmetic_CPP_instrukcja.pdf (I know it's in Polish but only the commends actually matter there)) - so this is clear installation and pretty much no other things were installed.
Firstly I got some problem with QTCreator which didn't detect QT automatically, but I manage to add it manually (it's QT 5.12.8), but now I find much more issues and communicates from QT creator, most of them... isn't exactly clear.
Just for reminder here is repository with my entire code - so far as I can see there's no case sensitive path there also it doesn't seem as any of my includes uses absolut paths or relative include path for standard headers (I don't find any of that in Interval.h and I think I can assume the other libraries I download don't have such issues) - but maybe I'm just missing something...Also the messages I mention are the following(it is quite long I had to copy it one by one from the IDE, as it hadn't let me to just mark it all...)
/home/ubuntu/Projekty/MetodaBairstowa/mywidget.cpp:1: In file included from ../MetodaBairstowa/mywidget.cpp:1: /home/ubuntu/Projekty/MetodaBairstowa/mywidget.h:4: In file included from ../MetodaBairstowa/mywidget.h:4: /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QWidget:1: In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QWidget:1: /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qwidget.h:43: In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qwidget.h:43: /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43: In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43: /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43: In file included from /usr/include/x86_64-linux-gnu/qt5/QtGui/qtguiglobal.h:43: /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:142: In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:142: /include/c++/9/algorithm:62: In file included from /bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/algorithm:62: /include/c++/9/bits/stl_algo.h:59: In file included from /bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_algo.h:59: /include/c++/9/cstdlib:75: error: 'stdlib.h' file not found #include_next <stdlib.h> ^~~~~~ /home/ubuntu/Projekty/MetodaBairstowa/main.cpp:1: In file included from ../MetodaBairstowa/main.cpp:1: /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1: In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QApplication:1: /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43: In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qapplication.h:43: /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43: In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/qtwidgetsglobal.h:43: /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:142: In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:142: /include/c++/9/algorithm:62: In file included from /bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/algorithm:62: /include/c++/9/bits/stl_algo.h:59: In file included from /bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_algo.h:59: /include/c++/9/cstdlib:75: error: 'stdlib.h' file not found #include_next <stdlib.h> ^~~~~~ In file included from ../MetodaBairstowa/solver.cpp../MetodaBairstowa/solverinterval.cpp::1: In file included from In file included from ../MetodaBairstowa/solver.cpp../MetodaBairstowa/solverinterval.cpp::1: 1In file included from : ../MetodaBairstowa/solverinterval.hIn file included from :../MetodaBairstowa/solver.h4:4: : In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/QString/usr/include/x86_64-linux-gnu/qt5/QtCore/QString::11: In file included from In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/QString/usr/include/x86_64-linux-gnu/qt5/QtCore/QString::11: : In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h::4848: In file included from In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h/usr/include/x86_64-linux-gnu/qt5/QtCore/qstring.h::4848: : In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h::4343: In file included from In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h/usr/include/x86_64-linux-gnu/qt5/QtCore/qchar.h::4343: : In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h::142142: In file included from In file included from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h/usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h::142142: : In file included from /include/c++/9/algorithm/include/c++/9/algorithm::6262: In file included from In file included from /bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/algorithm/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/algorithm::6262: : In file included from /include/c++/9/bits/stl_algo.h/include/c++/9/bits/stl_algo.h::5959: In file included from In file included from /bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_algo.h/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/bits/stl_algo.h::5959: : /bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/cstdlib:/bin/../lib/gcc/x86_64-linux-gnu/9/../../../../include/c++/9/cstdlib75::7515::15: fatal errorfatal error: : 'stdlib.h' file not found'stdlib.h' file not found #include_next <stdlib.h> #include_next <stdlib.h> ^~~~ ^~~~ /home/ubuntu/Projekty/MetodaBairstowa/interval.h:265: error: member reference base type 'const std::string' (aka 'const int') is not a structure or union /home/ubuntu/Projekty/MetodaBairstowa/interval.h:267: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:270: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:273: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:277: error: member reference base type 'const std::string' (aka 'const int') is not a structure or union /home/ubuntu/Projekty/MetodaBairstowa/interval.h:279: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:282: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:285: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:288: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:308: error: reference to 'std' is ambiguous /usr/include/c++/9/ostream:41: candidate found by name lookup is 'std' /usr/include/c++/9/bits/fstream.tcc:43: candidate found by name lookup is 'std::std' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:308: error: 'T' does not refer to a value /home/ubuntu/Projekty/MetodaBairstowa/interval.h:295: declared here /home/ubuntu/Projekty/MetodaBairstowa/interval.h:308: error: no member named 'digits10' in the global namespace /home/ubuntu/Projekty/MetodaBairstowa/interval.h:309: error: member reference base type 'std::stringstream' (aka 'int') is not a structure or union /home/ubuntu/Projekty/MetodaBairstowa/interval.h:309: error: reference to 'std' is ambiguous /usr/include/c++/9/ostream:41: candidate found by name lookup is 'std' /usr/include/c++/9/bits/fstream.tcc:43: candidate found by name lookup is 'std::std' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:312: error: cannot initialize a variable of type 'std::string' (aka 'int') with an rvalue of type 'const char *' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:314: error: reference to 'std' is ambiguous /usr/include/c++/9/ostream:41: candidate found by name lookup is 'std' /usr/include/c++/9/bits/fstream.tcc:43: candidate found by name lookup is 'std::std' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:316: error: member reference base type 'std::stringstream' (aka 'int') is not a structure or union /home/ubuntu/Projekty/MetodaBairstowa/interval.h:317: error: member reference base type 'std::stringstream' (aka 'int') is not a structure or union /home/ubuntu/Projekty/MetodaBairstowa/interval.h:317: error: reference to 'std' is ambiguous /usr/include/c++/9/ostream:41: candidate found by name lookup is 'std' /usr/include/c++/9/bits/fstream.tcc:43: candidate found by name lookup is 'std::std' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:325: error: reference to 'std' is ambiguous /usr/include/c++/9/ostream:41: candidate found by name lookup is 'std' /usr/include/c++/9/bits/fstream.tcc:43: candidate found by name lookup is 'std::std' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:327: error: member reference base type 'std::stringstream' (aka 'int') is not a structure or union /home/ubuntu/Projekty/MetodaBairstowa/interval.h:328: error: member reference base type 'std::stringstream' (aka 'int') is not a structure or union /home/ubuntu/Projekty/MetodaBairstowa/interval.h:403: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:406: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:409: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:440: error: assigning to 'std::string' (aka 'int') from incompatible type 'const char [21]' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:442: error: assigning to 'std::string' (aka 'int') from incompatible type 'const char [21]' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:451: error: assigning to 'std::string' (aka 'int') from incompatible type 'const char [21]' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:453: error: assigning to 'std::string' (aka 'int') from incompatible type 'const char [21]' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:462: error: assigning to 'std::string' (aka 'int') from incompatible type 'const char [21]' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:464: error: assigning to 'std::string' (aka 'int') from incompatible type 'const char [21]' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:471: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:476: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:481: error: use of undeclared identifier 'strcmp' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:496: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:498: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:506: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:498: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:506: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:510: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:514: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:735: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:737: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:739: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:747: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:749: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:751: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:758: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:760: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:762: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:771: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:783: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:795: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:807: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:820: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:835: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:845: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:848: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:851: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:865: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:868: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:871: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:896: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:899: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:903: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:906: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:910: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:913: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:917: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:920: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:928: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:931: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:935: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:938: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:942: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:945: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:949: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:952: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:960: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:963: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:967: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:970: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:974: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:977: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:981: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:984: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:990: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:999: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1021: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1041: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1044: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1048: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1051: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1055: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1058: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1062: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1065: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1073: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1076: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1080: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1083: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1087: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1090: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1094: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1097: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1109: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1324: error: use of undeclared identifier 'FE_DOWNWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1326: error: use of undeclared identifier 'FE_UPWARD' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:1328: error: use of undeclared identifier 'FE_TONEAREST' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:246: warning: unused parameter 'p' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:251: warning: unused parameter 'o' /home/ubuntu/Projekty/MetodaBairstowa/interval.h:256: warning: unused parameter 'o'
I tried to analyze it but I couldn't come up with any solution... :'(