Witam próbuje przy pomocy biblioteki net-snmp stworzyć prosty program który odpyta mi określone urządzenie o konkretną wartość ale nie mogę sobie poradzić z następującymi błędami:
warning: unused variable 'session' [-Wunused-variable] //jak zmienić typ auto
undefined reference to snmp_sess_init' undefined reference to
snmp_sess_open'
Używam Win 10 Code::Block 16.01 MinGw GCC 4.9 Series piszę w standardzie C++11 NET-SNMP ścieżkę do biblioteki dodałem do Compiler i Linker w C::B.
#include <iostream>
#include <string.h>
#define IP_MY "127.0.0.1"
namespace SNMP
{
#include <net-snmp/net-snmp-config.h>
#include <net-snmp/net-snmp-includes.h>
#include <net-snmp/session_api.h>
class Socket
{
public:
Socket()
{
SOCK_STARTUP;
init_snmp("snmpapp");
}
~Socket()
{
SOCK_CLEANUP;
}
};
const std::string community("public");
void InitSession(netsnmp_session& session, const std::string& ipAddress)
{
snmp_sess_init(&session); //TU ZGŁASZA 1 BŁĄD
session.timeout = 500000;
session.retries = 0;
session.version = SNMP_VERSION_2c;
session.remote_port = 161;
session.peername = (char*)ipAddress.c_str();
session.community = (u_char*)community.c_str();
session.community_len = community.size();
}
void* OpenSession(const std::string& ipAddress)
{
netsnmp_session session;
InitSession(session, ipAddress);
void* opaqueSession = snmp_sess_open(&session); //TU ZGŁASZA 2 BŁĄD
if (!opaqueSession)
std::cout << "Session wasn't opened!";
return opaqueSession;
}
}
int main()
{
SNMP::Socket socket;
while (true)
{
const std::string ipAddress(IP_MY);
auto session = SNMP::OpenSession(ipAddress); //TU ZGŁASZA WARNING-a
}
return 0;
}