Неразрешенная ошибка внешнего символа при использовании libsecp256k1 - PullRequest
0 голосов
/ 22 сентября 2019

Я скачал пакет nuget secp256k1_vc120 в Visual Studio.Я добавил папку «include» в свой список «дополнительных включаемых каталогов», папку «bin» в «дополнительные каталоги библиотеки», перечислил все 6 из файлов lib _x64 в «дополнительные зависимости» и скопировал оба _x64DLL файлы в system32.Мой тестовый код для генерации pubKey из privKey:

#include <stdio.h>
#include <secp256k1.h>
int main(int argc, char** argv)
{
    uint8_t* privKey = malloc(32);
    memset(privKey, 139, 32);
    secp256k1_context* ctx = secp256k1_context_create(SECP256K1_CONTEXT_SIGN);
    secp256k1_pubkey* pubkey = malloc(sizeof(*pubkey));
    secp256k1_ec_pubkey_create(ctx, pubkey, privKey);

    for (int i = 0; i < 65; i++)
    {
        printf("%02x", pubkey->data[i]);
    }
}

При попытке запустить код я получаю два сообщения «ошибка внешнего символа» относительно secp256k1_context_create() и secp256k1_pubkey_create();Кто-нибудь знает почему?Кроме того, какой из 6 файлов lib и 2 dll файлов я должен использовать (64-битный)?

...