Wednesday, August 31, 2022

[SOLVED] error: strstream.h: No such file or directory

Issue

I am trying to run an old C++ code in Linux (Redhat). I am using gcc version 4.1.2.

I got the following error:

error: strstream.h: No such file or directory
/trnuser1/rmtrain/DevelopmentEnv/Generic/CoreObjects/GCVTransformationServices.cpp:41: error: âostrstreamâ was not declared in this scope
/trnuser1/rmtrain/DevelopmentEnv/Generic/CoreObjects/GCVTransformationServices.cpp:41: error: expected `;' before âstrDestXMLâ
/trnuser1/rmtrain/DevelopmentEnv/Generic/CoreObjects/GCVTransformationServices.cpp:62: error: âstrDestXMLâ was not declared in this scope

This code was running fine under Solaris with gcc version 2.95. The line pointed to by the error contains the following statement:

ostrstream strDestXML;

How do I solve this?


Solution

You can #include <strstream> (note absence of the '.h' suffix). But if you want to properly port the code to modern C++, you should consider changing this to #include <sstream> and std::ostringstream strDestXML; as suggested in the comment.



Answered By - unkulunkulu
Answer Checked By - David Goodson (WPSolving Volunteer)