Как я могу правильно включить <odium.h> в Visual Studio?

Я прочитал раздел "Компиляция в Windows" на странице установки, но я все еще очень растерялся, надеюсь, некоторые эксперты могут меня просветить.


Я загрузил LATEST.tar.gz отсюда

После этого я скопировал sodium.h а также sodium папка в libsodium-1.0.12\src\libsodium\include в мой проект.

Вот код:

#include <stdio.h>
#include "sodium.h"
#pragma warning (disable:4996)

void main()
{
    char myString[32];
    uint32_t myInt;

    /* myString will be an array of 32 random bytes, not null-terminated */
    randombytes_buf(myString, 32);

    /* myInt will be a random number between 0 and 9 */
    myInt = randombytes_uniform(10);

    printf("%d", myInt);

    system("pause");
}

И я получаю эти ошибки при компиляции:

Ошибка LNK1120 2 неразрешенных внешних

Ошибка LNK2019: неразрешенный внешний символ __imp__randombytes_buf, указанный в функции _main

Ошибка LNK2019: неразрешенный внешний символ __imp__randombytes_uniform, указанный в функции _main

Я не получил ошибку, как "не могу открыть натрия.h".

Как я могу решить это?

Любая помощь приветствуется.

1 ответ

Решение

Ваши ошибки говорят о том, что существует проблема во время ссылки - поэтому ваша проблема не с включением sodium.h, Есть библиотека, которая не добавляется в ваш проект. Вы не можете просто скопировать библиотеку в каталог вашего проекта, вам нужно указать Visual Studio, чтобы она связывалась.

Другие вопросы по тегам