Troubleshooting: Difference between revisions
(more context for the valgrind failure for nsc) |
|||
Line 51: | Line 51: | ||
* Q. Why does valgrind fail with SIGILL on a simulation using NSC? | * Q. Why does valgrind fail with SIGILL on a simulation using NSC? | ||
* A. Valgrind does not work under 64-bit mode when running NSC due to lack of support for all the opcodes used. This has been confirmed to work in 32-bit mode. | * A. Valgrind does not work under 64-bit mode when running NSC due to lack of support for all the opcodes used. This has been confirmed to work in 32-bit mode. Check [http://www.nsnam.org/bugzilla/show_bug.cgi?id=356 this bug report] if you are concerned about a possible valgrind failure with an nsc script and want to see if it is a known issue. | ||
== Debugging tips == | == Debugging tips == |
Revision as of 04:58, 17 December 2008
Main Page - Roadmap - Summer Projects - Project Ideas - Developer FAQ - Tools - Related Projects
HOWTOs - Installation - Troubleshooting - User FAQ - Samples - Models - Education - Contributed Code - Papers
This is a wiki; if you find items not adequately covered below, please consider adding an entry.
Platform-specific issues
Cygwin
Python bindings
Python bindings do not build successfully due to a gccxml bug. See the NS-3_Python_Bindings#Caveats page.
If you see "resolving vtable" messages while linking such as the below when you compile on Cygwin, you can safely ignore them:
[530/535] cxx_link: build/debug/examples/wifi-wired-bridging_23.o -> build/debug /examples/wifi-wired-bridging.exe Info: resolving vtable for ns3::EmptyAttributeValueby linking to __imp___ZTVN3ns 319EmptyAttributeValueE (auto-import) Info: resolving vtable for ns3::RandomVariableValueby linking to __imp___ZTVN3ns 319RandomVariableValueE (auto-import) Info: resolving vtable for ns3::RectangleValueby linking to __imp___ZTVN3ns314Re ctangleValueE (auto-import) Info: resolving vtable for ns3::TimeValueby linking to __imp___ZTVN3ns39TimeValu eE (auto-import) Info: resolving vtable for ns3::BooleanValueby linking to __imp___ZTVN3ns312Bool eanValueE (auto-import) etc.
NSC
The Network Simulation Cradle is not supported under Cygwin. It is advised to use a Unix-based platform instead. Windows users can use a virtual machine to run e.g. Linux. See e.g. http://www.virtualbox.org/ for a free virtual machine.
General build problems
- Q. What is this kind of build error representative of?
assert failed. file=../src/core/type-id.cc, line=389, cond="uid != 0" Command ['/ns-3-dev/build/debug/examples/mixed-wireless'] exited with code -5
- A. The system can't find the specified TypeId. Check spelling, and whether it is prefixed with the namespace "ns3::"
- Q. A required software package is in a non-standard place. How to get waf to find the packages?
- A. To compile with non-standard link path, use the environment variable LINKFLAGS. Example for bash shell:
LINKFLAGS="-L/tmp" ./waf configure
Run-time errors
- Q. What is this assertion indicating?
assert failed. file=debug/ns3/tags.h, line=105, cond="sizeof (T) <= Tags::SIZE"
- A. The packet tag may be greater than Tags::SIZE (16 bytes)
- Q. Why does valgrind fail with SIGILL on a simulation using NSC?
- A. Valgrind does not work under 64-bit mode when running NSC due to lack of support for all the opcodes used. This has been confirmed to work in 32-bit mode. Check this bug report if you are concerned about a possible valgrind failure with an nsc script and want to see if it is a known issue.
Debugging tips
- Q. Is there a way to dereference a Ptr when in gdb?
- A. yes: p *ptr->m_ptr