Page 1 of 1

Known Issues: 3.5.1

Posted: Tue Jul 16, 2024 3:24 pm
by Forrest
Summary of Issues
  • Compilation error when attempting to build in IPv4 only mode
---

Compilation error when attempting to build in IPv4 only mode

Known Affected Versions

3.5.1

Description

A build error occurs when attempting to build an application with IPV4ONLY defined in nbrtos/include/predef.h. The error message is similar to the following:

Code: Select all

CXX obj/release/nbrtos/source/config_obj.o from c:/gitroot/nburn3/nbrtos/source/config_obj.cpp
c:/gitroot/nburn3/nbrtos/source/config_obj.cpp:269:5: error: 'config_IPADDR' has not been declared
 int config_IPADDR::FdPrintValue(int fd, bool raw)
    ^~~~~~~~~~~~~
c:/gitroot/nburn3/nbrtos/source/config_obj.cpp: In function 'int FdPrintValue(int, bool)':
c:/gitroot/nburn3/nbrtos/source/config_obj.cpp:271:29: error: 'val' was not declared in this scope
    fdiprintf(fd, "\"%I\"", val);
Solution

To fix the build error, you will need to make a quick change to a single file.

Please edit nbrtos/source/config_obj.cpp and find the function config_IPADDR::FdPrintValue() around line 290. Then, add an #ifdef IPV6 around that function so it looks like this:

Code: Select all

#ifdef IPV6
int config_IPADDR::FdPrintValue(int fd, bool raw)
{
    fdiprintf(fd, "\"%I\"", val);
    return 0;
}
#endif
Resolved

This issue has been resolved in development and will be available in the next release.

---