1

I have a version of ns-3.26 installed on my VM. Its working fine. However now I need to use very old code and since I dont want to break anything, I downloaded ns-3.26 again and wanted to build it. But the waf configure gives me for this version a lot of missing headers:

Checking for header stdint.h                                       : not found
Checking for header inttypes.h                                     : not found
Checking for header sys/inttypes.h                                 : not found
Checking for header sys/types.h                                    : not found
Checking for header sys/stat.h                                     : not found
Checking for header dirent.h                                       : not found
Checking for header stdlib.h                                       : not found
Checking for header signal.h                                       : not found

In the first version it does find all headers. I am totally confused by that and have no idea how to tackle this problem. What could be the reason for that and how can I solve it?

// EDIT: I am forced to this version of ns3

Fuzzyma
  • 7,619
  • 6
  • 28
  • 60

1 Answers1

0

So the problem was, that waf was trying to link a shared library I used but the file it tried to link was corrupt. Therefore all the mini compilations waf performs to check for missing headers failed and the header was shown as not found. That ofc yields the wrong environment variables.

I copied the shared library again which made it work. However, it can happen that your so file is a symbolic link which breaks under circumstances. In this case you need to create a new link with the same name which points to the correct so file.

Fuzzyma
  • 7,619
  • 6
  • 28
  • 60