Hi,
However, the howto only considers the upgrade from 3.17 onward. For older ns-3 releases (heavily deprecated) things are more complex, and it all depends on the modifications the user did.
There are the following cases:
- The user is "just" using ns-3. No modifications have been made under "src" and no custom scrips have been made.
- The user is using ns-3. No modifications have been made under "src" but custom scrips have been made.
- The user did modify the ns-3 "src" folder.
Case 1: trash your old ns-3 and do a clean install.
Case 2: save your scripts, trash your old ns-3 and do a clean install. Then move your scripts in the scratch directory and compile. Errors will be thrown, fix them.
Case 3: good luck.
In case 2, the errors thrown by the scrips will be mostly about include directives. The module names have been changed, so you'll need to find the new ones. It's easer than one may expect: "#include "ns3/csma-module.h" will include all the headers needed to use csma. It's much simpler than before.
In case 3, the problem is that the modifications to the src files and/or the custom modules may not work at all. From 3.12 or 3.15 a LOT of things have been changed, so upgrading old modules may be a real pain. The best suggestion is to take a deep breath, a lot of beers (enough for a week) and migrate the old modules one by one. You can also check if the module has been updated by someone, maybe you're lucky enough.
In any case, I have to repeat myself. Using 2.3.years old software is definitely a bad idea. If changes have been made, there's a reason.
Good luck,
T.