Correct inability to extend payload for rts msg
[ric-plt/lib/rmr.git] / BUILD
diff --git a/BUILD b/BUILD
index bf4121a..681ba4c 100644 (file)
--- a/BUILD
+++ b/BUILD
@@ -55,6 +55,7 @@ the configuration:
   -DPACK_EXTERNALS=1   Include external libraries used to build in the run-time package
   -DPRESERVE_PTYPE=1   Do not change the processor type when naming deb packages
   -DSKIP_EXTERNALS=1   Do not use Nano/NNG submodules when building; use installed packages
+                                               (See caution in the 'Libraries' section below)
 
 
 Packages
@@ -142,6 +143,16 @@ might require separate libraries, and thus the library name is
 given a suffix of _nng to reflect the transport mechanism
 in use.
 
+NNG version with a commit ID of 906d5ea1b3d67bece941d8a4e0a049e5f6c65051
+is required to build RMR.  That version (as yet untagged) adds a
+new error state which we must trap.  While application environments
+are encouraged to also build and install at least this version of
+NNG, RMR is still compatable back to the version tagged as 1.1.1.
+If you opt to build with the -DSKIP_EXTERNALS=1 flag set, you must
+ensure that this version of NNG is present in your build environment.
+If you do not set this flag, the proper NNG source will be used
+automatically.
+
 Regardless of transport mechanism supported by an RMR library,
 the RMR API will be identical, thus it is possible for an application
 to shift mechanisms simply by referencing a different library (should
@@ -162,4 +173,24 @@ and troff format.  The troff pages are placed into the deb and
 the postscript pages are left in the build directory for the
 developer to convert to PDF, or otherwise use.
 
-
+Debug Mode
+Because RMR is designed to keep its overhead to an absolute minimum,
+messages written to standard error are by default very limited.
+The route table collection thread provides the means to enable
+debug messages on the fly, but only because that thread does not
+impact the sending and receiving of user messages.
+
+If it becomes necessary, for development or problem soving, to have
+the RMR functions generate debugging messages the following
+CMake flag can be given when the CMake environment is created:
+       -DDEBUG=n
+
+The value for 'n' should be 1 or 2 to enable debugging.  The default
+when not given is the same as setting n to zero.
+
+When running in debug mode, RMR will log messages received, sent,
+and other useful information.  Because debugging uses fprintf() there
+is a significant amount of overhead with logging this information and
+thus in debugging mode the user should not expect that usual message
+rates can be achieved, and in some cases may cause messages to drop
+if TCP queues become full.