Closed yeliqseu closed 2 years ago
I have figured out a workaround to make the module work in ns-3 versions >=3.31:
1, Change all the occurrence of source codes reporting error: no matching function for call to ‘Seconds(ns3::Time&)’
to something like appStartTime, Seconds (simLength.GetSeconds ()), Seconds (0.001));
. That is, convert Time objects to double before calling Seconds ().
2, Change all the IsEqual() calls in helper/satellite-helper.cc to the operator "==", because IsEqual() API is deprecated since ns-3.33. For example:
- if ( netAddressA.IsEqual (netAddressB))
+ if ( netAddressA == netAddressB)
3, Change all the public static variables of class SatBaseTraceContainer (model/satellite-base-trace-container.h) to non-static by removing the static keyword. This will correct the ld error.
The module now compiles correctly in ns-3.35. I think the issue can be closed.
thanks,this is helpful
I managed to installed sns3-satellite on ns-3.29. However, when I tried to install it in a fresh ns-3.33, I got the following errors:
It seems that some APIs have changed in ns-3. I then tried to disable all the examples by commenting out
in contrib/satellite/wscript. However, I still got the following error:
I assume that some ns-3 internal mechanism has changed since ns-3.29. I therefore tried sns3-satellite in all the newer versions, and it seems that the installation can be successful up to ns-3.30.1.
Any idea on how to build it successfully in ns-3.33? Thanks.