net-snmp / net-snmp

A SNMP application library, tools and daemon
Other
333 stars 218 forks source link

Not able to cross-compile net-snmp 5.9.4 with OpenSSL3.0 #893

Open ashu-ciena opened 2 days ago

ashu-ciena commented 2 days ago

Hello,

I am upgrading the OpenSSL stack to 3.0 on my target network element. In order to test higher order digest algorithm, I need to compile netsnmp with OpenSSL 3.0 on a x86_64 Linux platform. I am not able to find help in the configure script how to fix the below compile errors:

/bin/sh ../libtool --mode=compile gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c -o agentxtrap.lo agentxtrap.c libtool: compile: gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c agentxtrap.c -fPIC -DPIC -o .libs/agentxtrap.o libtool: compile: gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c agentxtrap.c -o agentxtrap.o >/dev/null 2>&1 /bin/sh ../libtool --mode=link gcc -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -o agentxtrap agentxtrap.lo ../agent/libnetsnmpmibs.la ../agent/libnetsnmpagent.la ../snmplib/libnetsnmp.la -Wl,--enable-new-dtags -Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld ../snmplib/libnetsnmp.la
libtool: link: gcc -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -o .libs/agentxtrap .libs/agentxtrap.o -Wl,--enable-new-dtags -Wl,-z -Wl,relro -Wl,-z -Wl,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld ../agent/.libs/libnetsnmpmibs.so -L/usr/local/lib -L/usr/lib64/perl5/CORE /localdata/amaheshw/net-snmp-5.9.4/agent/.libs/libnetsnmpagent.so -lnl-3 -lpci -lrpm -lrpmio ../agent/.libs/libnetsnmpagent.so /localdata/amaheshw/net-snmp-5.9.4/snmplib/.libs/libnetsnmp.so -lpcre -lperl -lpthread -lresolv -ldl -lcrypt -lutil -lc ../snmplib/.libs/libnetsnmp.so -lm -Wl,-rpath -Wl,/usr/local/lib /bin/sh ../libtool --mode=compile gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c -o snmpvacm.lo snmpvacm.c libtool: compile: gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c snmpvacm.c -fPIC -DPIC -o .libs/snmpvacm.o libtool: compile: gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c snmpvacm.c -o snmpvacm.o >/dev/null 2>&1 /bin/sh ../libtool --mode=link gcc -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -o snmpvacm snmpvacm.lo ../snmplib/libnetsnmp.la
libtool: link: gcc -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -o .libs/snmpvacm .libs/snmpvacm.o ../snmplib/.libs/libnetsnmp.so -lm -Wl,-rpath -Wl,/usr/local/lib /bin/sh ../libtool --mode=compile gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c -o snmpusm.lo snmpusm.c libtool: compile: gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c snmpusm.c -fPIC -DPIC -o .libs/snmpusm.o libtool: compile: gcc -I../include -I. -I../agent -I../agent/helpers -I../agent/mibgroup -I/usr/include/libnl3 -I../snmplib -I/usr/include/libnl3 -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -c snmpusm.c -o snmpusm.o >/dev/null 2>&1 /bin/sh ../libtool --mode=link gcc -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -o snmpusm snmpusm.lo ../snmplib/libnetsnmp.la
libtool: link: gcc -g -O2 -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -DNETSNMP_REMOVE_U64 -g -O2 -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE -o .libs/snmpusm .libs/snmpusm.o ../snmplib/.libs/libnetsnmp.so -lm -Wl,-rpath -Wl,/usr/local/lib .libs/snmpusm.o: In function get_USM_DH_key': /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:204: undefined reference tod2i_DHparams' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:208: undefined reference to DH_get0_pqg' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:215: undefined reference toDH_generate_key' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:220: undefined reference to DH_get0_key' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:221: undefined reference toBN_num_bits' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:228: undefined reference to BN_bn2bin' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:230: undefined reference toDH_size' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:242: undefined reference to BN_bin2bn' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:249: undefined reference toDH_compute_key' /localdata/amaheshw/net-snmp-5.9.4/apps/snmpusm.c:224: undefined reference to `BN_num_bits' collect2: error: ld returned 1 exit status make[1]: [Makefile:331: snmpusm] Error 1 make[1]: Leaving directory '/localdisk/amaheshw/net-snmp-5.9.4/apps' make: [Makefile:671: subdirs] Error 1 bash-4.4$

Can some please help?

jridky commented 2 days ago

Looks like you're missing some dependency. Take a look at build output for Fedora Rawhide (net-snmp-5.9.4 with openssl-3) and see set of requirements for that build.