Jump to content
katang

A SystemC installl problem on Ubuntu

Recommended Posts

I made a new installation on Ubuntu 18.04, and followed instructions in

https://howto.tech.blog/2016/11/27/installing-systemc-2-3-1/

Apparently it worked fine, but at the last step it gave the error message

$ g++ -I. -I$SYSTEMC_HOME/include -L. -L$SYSTEMC_HOME/lib-linux64 -Wl,-rpath=$SYSTEMC_HOME/lib-linux64 -o hello Hello.cpp -lsystemc -lm
In file included from Hello.cpp:1:0:
/usr/local/systemc-2.3.1//include/systemc.h:120:16: error: ‘std::gets’ has not been declared
     using std::gets;
                ^~~~

Is there an error in my install? (SystemC install seemed to run without error message)

 

Share this post


Link to post
Share on other sites

This issue has been fixed in the SystemC 2.3.2 release available from the Accellera website. The function std::gets was definitely removed in the C'11 standard and deprecated in the C++'11 standard so that recent compilers do not provide it anymore as its semantics constitutes a security risk due to buffer overflows.

Share this post


Link to post
Share on other sites

If it is necessary for you to stick with SystemC 2.3.1, you can simply comment out the offending line in systemc.h. The function is nowhere used inside the proof-of-concept implementation of SystemC.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...