LNK2001 VS2012 Net-SNMP

Я нахожусь в конце моей веревки с этой ошибкой компоновщика. Я искал в Интернете и ковырял мозги несколько дней, но совершенно растерялся. Я установил через загружаемые двоичные файлы Net-SNMP (net-snmp-5.5.0-2.x64.exe) для Windows и попытался запустить пример программы. На этапе компиляции ошибок нет, но я получаю сообщение LNK2001: неразрешенные ошибки внешних символов. Это будет означать, что я неправильно соединил библиотеки, но я чувствую, что теперь у меня есть надежда, что кто-то поймет, где я ошибся. Я уверен, что это что-то маленькое, но я просто не могу его найти.

Большое спасибо за помощь; Вы понятия не имеете, какой вес это снимает с моих плеч.

Дополнительные каталоги включения: C: \ net-snmp \ include

Дополнительные каталоги библиотеки: C: \ net-snmp \ lib; C: \ net-snmp \ bin

Дополнительные зависимости: netsnmp.lib netsnmpagent.lib netsnmphelpers.lib netsnmpmibs.lib netsnmptrapd.lib (я пробовал просто включить netsnmp.lib, поскольку это все, что мне нужно, но сейчас я использую дробовик)

ПРИМЕЧАНИЕ. Net-SNMP устанавливается в C: \ net-snmp, и использование встроенных утилит Net-SNMP через командную строку работает безупречно.

Источник:

#include <net-snmp/net-snmp-config.h>
#include <net-snmp/net-snmp-includes.h>
#include <string.h>

int main(int argc, char ** argv)
{
    struct snmp_session session;
    struct snmp_session *sess_handle;
    struct snmp_pdu *pdu;
    struct snmp_pdu *response;
    struct variable_list *vars;

    oid id_oid[MAX_OID_LEN];
    oid serial_oid[MAX_OID_LEN];
    size_t id_len = MAX_OID_LEN;
    size_t serial_len = MAX_OID_LEN;

    int status;
    struct tree * mib_tree;

    /*********************/
    if(argv[1] == NULL){
        printf("Please supply a hostname\n");
        exit(1);
    }

    init_snmp("Den Dolphin 2 Check");
    snmp_sess_init( &session );

    session.version = SNMP_VERSION_1;
    session.community = (u_char*) "public";
    session.community_len = strlen((const char *)session.community);
    session.peername = argv[1]; //172.20.2.103 - Den Dolphin 2

    sess_handle = snmp_open(&session);
    add_mibdir(".");
    mib_tree = read_mib("xiden.txt");
    pdu = snmp_pdu_create(SNMP_MSG_GET);

    read_objid("PowerNet-MIB::upsBasicIdentModel.0", id_oid, &id_len);
    snmp_add_null_var(pdu, id_oid, id_len);
    read_objid("PowerNet-MIB::upsAdvIdentSerialNumber.0", serial_oid, &serial_len);

    snmp_add_null_var(pdu, serial_oid, serial_len);
    status = snmp_synch_response(sess_handle, pdu, &response);

    for(vars = response->variables; vars; vars = vars->next_variable)
        print_value(vars->name, vars->name_length, vars);

    snmp_free_pdu(response);
    snmp_close(sess_handle);
    return (0);
}

Ошибки компоновщика:

    Error   1   error LNK2001: unresolved external symbol _snmp_add_null_var    W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   2   error LNK2001: unresolved external symbol _add_mibdir   W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   3   error LNK2001: unresolved external symbol _snmp_synch_response  W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   4   error LNK2001: unresolved external symbol _snmp_sess_init   W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   5   error LNK2001: unresolved external symbol _snmp_pdu_create  W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   6   error LNK2001: unresolved external symbol _snmp_close   W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   7   error LNK2001: unresolved external symbol _read_objid   W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   8   error LNK2001: unresolved external symbol _init_snmp    W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   9   error LNK2001: unresolved external symbol _print_value  W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   10  error LNK2001: unresolved external symbol _snmp_free_pdu    W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   11  error LNK2001: unresolved external symbol _read_mib W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   12  error LNK2001: unresolved external symbol _snmp_open    W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\snmp_test.obj snmp_test
    Error   13  error LNK1120: 12 unresolved externals  W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\Release\snmp_test.exe snmp_test




Build Output:

1>------ Build started: Project: snmp_test, Configuration: Release Win32 ------
1>  
1>  Starting pass 1
1>  Processed /DEFAULTLIB:uuid.lib
1>  Processed /DEFAULTLIB:MSVCRT
1>  Processed /DEFAULTLIB:OLDNAMES
1>  
1>  Searching libraries
1>      Searching netsnmp.lib:
1>      Searching C:\net-snmp\lib\netsnmpagent.lib:
1>      Searching C:\net-snmp\lib\netsnmphelpers.lib:
1>      Searching C:\net-snmp\lib\netsnmpmibs.lib:
1>      Searching C:\net-snmp\lib\netsnmptrapd.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\kernel32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\user32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\gdi32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\winspool.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\comdlg32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\advapi32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\shell32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\ole32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\oleaut32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\uuid.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\odbc32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\odbccp32.lib:
1>      Searching C:\net-snmp\lib\netsnmp.lib:
1>      Searching C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib\MSVCRT.lib:
1>        Found @__security_check_cookie@4
1>          Referenced in snmp_test.obj
1>          Loaded MSVCRT.lib(secchk.obj)
1>        Found __imp__printf
1>          Referenced in snmp_test.obj
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __imp__exit
1>          Referenced in snmp_test.obj
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found _mainCRTStartup
1>          Loaded MSVCRT.lib(crtexe.obj)
1>        Found ___report_gsfailure
1>          Referenced in MSVCRT.lib(secchk.obj)
1>          Loaded MSVCRT.lib(gs_report.obj)
1>        Found ___security_cookie
1>          Referenced in MSVCRT.lib(secchk.obj)
1>          Referenced in MSVCRT.lib(gs_report.obj)
1>          Loaded MSVCRT.lib(gs_cookie.obj)
1>        Found __IMPORT_DESCRIPTOR_MSVCR110
1>          Referenced in MSVCRT.lib(MSVCR110.dll)
1>          Referenced in MSVCRT.lib(MSVCR110.dll)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found ___CxxSetUnhandledExceptionFilter
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(unhandld.obj)
1>        Found __XcptFilter
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __amsg_exit
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __setargv
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(dllargv.obj)
1>        Found __imp____getmainargs
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __imp____set_app_type
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __IsNonwritableInCurrentImage
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(pesect.obj)
1>        Found __imp___exit
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __imp___cexit
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found ___security_init_cookie
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(gs_support.obj)
1>        Found __matherr
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(merr.obj)
1>        Found _atexit
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(atonexit.obj)
1>        Found __RTC_Initialize
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(initsect.obj)
1>        Found __imp___configthreadlocale
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __setdefaultprecision
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(fp8.obj)
1>        Found __imp____setusermatherr
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __initterm_e
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __initterm
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __SEH_epilog4
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Loaded MSVCRT.lib(sehprolg4.obj)
1>        Found __except_handler4
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Referenced in MSVCRT.lib(pesect.obj)
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Referenced in MSVCRT.lib(sehprolg4.obj)
1>          Loaded MSVCRT.lib(chandler4gs.obj)
1>        Found ___globallocalestatus
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(xthdloc.obj)
1>        Found __commode
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(xncommod.obj)
1>        Found __dowildcard
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(wildcard.obj)
1>        Found __newmode
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(_newmode.obj)
1>        Found __imp____initenv
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found ___native_startup_state
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(natstart.obj)
1>        Found __fmode
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(xtxtmode.obj)
1>        Found __imp___fmode
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __imp___commode
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found ___xi_a
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Loaded MSVCRT.lib(cinitexe.obj)
1>  Processed /DEFAULTLIB:kernel32.lib
1>   Processed /DISALLOWLIB:libcmt.lib
1>   Processed /DISALLOWLIB:libcmtd.lib
1>   Processed /DISALLOWLIB:msvcrtd.lib
1>        Found __crt_debugger_hook
1>          Referenced in MSVCRT.lib(gs_report.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found ___crtUnhandledException
1>          Referenced in MSVCRT.lib(gs_report.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found ___crtTerminateProcess
1>          Referenced in MSVCRT.lib(gs_report.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __NULL_IMPORT_DESCRIPTOR
1>          Referenced in MSVCRT.lib(MSVCR110.dll)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found MSVCR110_NULL_THUNK_DATA
1>          Referenced in MSVCRT.lib(MSVCR110.dll)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found "void __cdecl terminate(void)" (?terminate@@YAXXZ)
1>          Referenced in MSVCRT.lib(unhandld.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found ___crtSetUnhandledExceptionFilter
1>          Referenced in MSVCRT.lib(unhandld.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __lock
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __unlock
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __imp___calloc_crt
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found ___dllonexit
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __imp___onexit
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __invoke_watson
1>          Referenced in MSVCRT.lib(fp8.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __controlfp_s
1>          Referenced in MSVCRT.lib(fp8.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>        Found __except_handler4_common
1>          Referenced in MSVCRT.lib(chandler4gs.obj)
1>          Loaded MSVCRT.lib(MSVCR110.dll)
1>      Searching C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib\OLDNAMES.lib:
1>      Searching netsnmp.lib:
1>      Searching C:\net-snmp\lib\netsnmpagent.lib:
1>      Searching C:\net-snmp\lib\netsnmphelpers.lib:
1>      Searching C:\net-snmp\lib\netsnmpmibs.lib:
1>      Searching C:\net-snmp\lib\netsnmptrapd.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\kernel32.lib:
1>        Found __imp__EncodePointer@4
1>          Referenced in MSVCRT.lib(crtexe.obj)
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found __imp__IsDebuggerPresent@0
1>          Referenced in MSVCRT.lib(gs_report.obj)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found _IsProcessorFeaturePresent@4
1>          Referenced in MSVCRT.lib(gs_report.obj)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found __imp__QueryPerformanceCounter@4
1>          Referenced in MSVCRT.lib(gs_support.obj)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found __imp__GetCurrentProcessId@0
1>          Referenced in MSVCRT.lib(gs_support.obj)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found __imp__GetCurrentThreadId@0
1>          Referenced in MSVCRT.lib(gs_support.obj)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found __imp__GetSystemTimeAsFileTime@4
1>          Referenced in MSVCRT.lib(gs_support.obj)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found __imp__DecodePointer@4
1>          Referenced in MSVCRT.lib(atonexit.obj)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found __IMPORT_DESCRIPTOR_KERNEL32
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>        Found KERNEL32_NULL_THUNK_DATA
1>          Referenced in kernel32.lib(KERNEL32.dll)
1>          Loaded kernel32.lib(KERNEL32.dll)
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\user32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\gdi32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\winspool.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\comdlg32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\advapi32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\shell32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\ole32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\oleaut32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\uuid.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\odbc32.lib:
1>      Searching C:\Program Files (x86)\Windows Kits\8.0\lib\win8\um\x86\odbccp32.lib:
1>      Searching C:\net-snmp\lib\netsnmp.lib:
1>      Searching C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib\MSVCRT.lib:
1>      Searching C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib\OLDNAMES.lib:
1>      Searching netsnmp.lib:
1>      Searching C:\net-snmp\lib\netsnmpagent.lib:
1>      Searching C:\net-snmp\lib\netsnmphelpers.lib:
1>      Searching C:\net-snmp\lib\netsnmpmibs.lib:
1>      Searching C:\net-snmp\lib\netsnmptrapd.lib:
1>  
1>  Finished searching libraries
1>  
1>  Finished pass 1
1>  
1>snmp_test.obj : error LNK2001: unresolved external symbol _snmp_add_null_var
1>snmp_test.obj : error LNK2001: unresolved external symbol _add_mibdir
1>snmp_test.obj : error LNK2001: unresolved external symbol _snmp_synch_response
1>snmp_test.obj : error LNK2001: unresolved external symbol _snmp_sess_init
1>snmp_test.obj : error LNK2001: unresolved external symbol _snmp_pdu_create
1>snmp_test.obj : error LNK2001: unresolved external symbol _snmp_close
1>snmp_test.obj : error LNK2001: unresolved external symbol _read_objid
1>snmp_test.obj : error LNK2001: unresolved external symbol _init_snmp
1>snmp_test.obj : error LNK2001: unresolved external symbol _print_value
1>snmp_test.obj : error LNK2001: unresolved external symbol _snmp_free_pdu
1>snmp_test.obj : error LNK2001: unresolved external symbol _read_mib
1>snmp_test.obj : error LNK2001: unresolved external symbol _snmp_open
1>W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\Release\snmp_test.exe : fatal error LNK1120: 12 unresolved externals
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

Командная строка конфигурации компоновщика:

/OUT:"W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\Release\snmp_test.exe" /MANIFEST /LTCG 
/NXCOMPAT /PDB:"W:\SNMP Depot\NetSMNP\snmp_test\snmp_test\Release\snmp_test.pdb" 
/DYNAMICBASE "netsnmp.lib" "netsnmpagent.lib" "netsnmphelpers.lib" "netsnmpmibs.lib" 
"netsnmptrapd.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "winspool.lib" "comdlg32.lib" 
"advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.lib" "uuid.lib" "odbc32.lib" 
"odbccp32.lib" /DEBUG /MACHINE:X86 /OPT:REF /SAFESEH /PGD:"W:\SNMP 
Depot\NetSMNP\snmp_test\snmp_test\Release\snmp_test.pgd" /MANIFESTUAC:"level='asInvoker' 
uiAccess='false'" /ManifestFile:"Release\snmp_test.exe.intermediate.manifest" /OPT:ICF 
/ERRORREPORT:PROMPT /NOLOGO /VERBOSE /LIBPATH:"C:\net-snmp\lib" /LIBPATH:"C:\net-snmp\bin" 
/TLBID:1 

person jhammond    schedule 06.09.2013    source источник
comment
Пожалуйста, опубликуйте вывод сборки, который показывает командную строку ссылки.   -  person Ziffusion    schedule 07.09.2013
comment
Это то, что вы имеете в виду? Я обновил пост   -  person jhammond    schedule 07.09.2013
comment
Получили ли вы это здание с Visual Studio? Мне пришлось прибегнуть к использованию метода Cmake для построения IIRC.   -  person EhevuTov    schedule 09.09.2013


Ответы (1)


Похоже, что рекомендуемый способ создания и связывания приложений net-snmp выглядит следующим образом:

gcc `net-snmp-config --cflags` `net-snmp-config --libs` `net-snmp-config --external-libs` snmp_test.c -o snmp_test

Обратные кавычки предназначены для платформы * nix. Но вы можете получить необходимые значения и на платформе Windows. Выполните следующие команды в оболочке и убедитесь, что вы используете выходные значения для CFLAGS и библиотек.

net-snmp-config --cflags
net-snmp-config --libs
net-snmp-config --external-libs

См. справочную страницу по net-snmp-config для других опций, чтобы перечислить необходимые флаги и библиотеки.

person Ziffusion    schedule 06.09.2013
comment
Большое спасибо за ответ на мой пост! Я не очень * nix saavy, поэтому у меня к вам глупый вопрос: когда вы говорите выполнять команды в оболочке, вы имеете в виду что-то вроде Cygwin в Windows, командной строки или что-то еще? Кроме того, там, где я работаю, мы используем VS2008 или VS2012 практически для всего, поэтому я не использую gcc для этого проекта. - person jhammond; 07.09.2013
comment
Да, в окне cmd.exe или cygwin. net-snmp-config должен находиться в каталоге bin вместе с другими исполняемыми файлами. См. Другие параметры на странице руководства. Вероятно, вам не хватает библиотеки. Эта команда даст вам представление о возможных библиотеках (одна из которых может отсутствовать). Не беспокойтесь о команде gcc. - person Ziffusion; 07.09.2013