The default behaviour when linking a binary progam is that the symbols
defined within the program itself are not exported to the library it loads.
This was inhibiting the use of modules within ns: clearly, we want a ns module library to
be able to call functions implemented within the core simulator (i.e., the ns
executable).
To overcome this issue, our patch uses the linker flag --export-dynamic
to build the ns
executable. It is to be noted that this flag is specific to the GNU linker ld
, which is not available on all operative systems.