You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Trying to build 5.9 on a MacOS 11 machine (which the net-snmp build scripts identify as darwin20 per the x86_64-apple-darwin20.1.0 that config.guess returns) I get:
Undefined symbols for architecture x86_64:
"_sysctl_read_icmp6_msg_stat", referenced from:
import-atom in libnetsnmpmibs.dylib
"_sysctl_read_icmp6_stat", referenced from:
import-atom in libnetsnmpmibs.dylib
"_sysctl_read_icmp_msg_stat", referenced from:
import-atom in libnetsnmpmibs.dylib
"_sysctl_read_icmp_stat", referenced from:
import-atom in libnetsnmpmibs.dylib
ld: symbol(s) not found for architecture x86_64
The basic issue is that those functions are defined in agent/mibgroup/mibII/kernel_sysctl.c but the configure script does not bring that file into the build.
...so it seems to try to expand use of kernel_sysctl to more darwin versions, but still not the "darwin20" that I am actually building under. I haven't tested if "master" works or not for me though.
So it seems like:
the existing code seems to be trying to make the kernel_sysctl use dependent on the exact version of MacOS one is building under
however neither master nor 5.9 seem to think darwin20 is in that set
yet it does seem to be required to make the project build
For reference, the reason that the symbols are used is because...
... is true. ICMPCTL_STATS is defined in <netinet/icmp_var.h> (at least in MacOSX11.0.sdk). NETSNMP_CAN_USE_SYSCTL comes from the configure scripts (configure.d/config_os_misc4 to be precise):
This was tricky but the main failure seems to be down to this issue
which I filed upstream: net-snmp/net-snmp#226
I'm not confident what the real fix is, but this workaround seems
to fix it.
* net-snmp: fix build on Big Sur
This was tricky but the main failure seems to be down to this issue
which I filed upstream: net-snmp/net-snmp#226
I'm not confident what the real fix is, but this workaround seems
to fix it.
* net-snmp: update configure patch to version landed upstream
Closes#66832.
Signed-off-by: FX Coudert <fxcoudert@gmail.com>
Signed-off-by: BrewTestBot <1589480+BrewTestBot@users.noreply.github.com>
Trying to build 5.9 on a MacOS 11 machine (which the net-snmp build scripts identify as
darwin20
per thex86_64-apple-darwin20.1.0
that config.guess returns) I get:The basic issue is that those functions are defined in agent/mibgroup/mibII/kernel_sysctl.c but the configure script does not bring that file into the build.
In agent/mibgroup/mibII/icmp.h there is:
If I change that "darwin10" to just be "darwin" everything builds fine. However, I am not 100% sure that is the correct fix.
I noticed in the
master
branch this code looks a little different:...so it seems to try to expand use of kernel_sysctl to more darwin versions, but still not the "darwin20" that I am actually building under. I haven't tested if "master" works or not for me though.
So it seems like:
master
nor 5.9 seem to think darwin20 is in that setFor reference, the reason that the symbols are used is because...
... is true.
ICMPCTL_STATS
is defined in<netinet/icmp_var.h>
(at least in MacOSX11.0.sdk).NETSNMP_CAN_USE_SYSCTL
comes from the configure scripts (configure.d/config_os_misc4 to be precise):The text was updated successfully, but these errors were encountered: