Bitcoin Forum

Bitcoin => Bitcoin Technical Support => Topic started by: Quetzalcoatl_ on August 25, 2011, 10:09:31 PM



Title: Bug report: Build error: Too few arguments to miniupnpc-related functions
Post by: Quetzalcoatl_ on August 25, 2011, 10:09:31 PM
I'm building on Linux, but the source has this:

Code:
#ifndef __WXMSW__
        r = UPNP_AddPortMapping(urls.controlURL, data.first.servicetype,
                                port, port, lanaddr, strDesc.c_str(), "TCP", 0);
#else
        r = UPNP_AddPortMapping(urls.controlURL, data.first.servicetype,
                                port, port, lanaddr, strDesc.c_str(), "TCP", 0, "0");
#endif

The code that compiles when __WXMSW__ is defined is the correct code for my system. However,
adding -D__WXMSW__ to the GCC command line results in Windows-specific code being activated
throughout the program, which leads to other build errors.

How many arguments to pass to UPNP_AddPortMapping and other functions from that library cannot be tied to whether __WXMSW__ is defined. To get this to compile, I had to find all the improperly-called miniupnpc functions and remove the
bad version.