如何在Visual Studio中正确包含<sodium.h>?
我在安装页面阅读Windows编译部分,但我仍然很困惑,希望有些专家能够赐教。
我从这里下载了LATEST.tar.gz
。
之后,我将libsodium-1.0.12srclibsodiuminclude
sodium.h
和sodium
文件夹复制到我的项目中。
代码如下:
#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中引用
在函数_main中引用错误LNK2019未解析的外部符号__imp__randombytes_uniform
我没有得到像“无法打开sodium.h”的错误。
我该如何解决这个问题?
任何帮助表示赞赏。
你的错误告诉你在链接时有问题 - 所以你的问题不包括sodium.h
。 有一个图书馆没有被添加到你的项目中。 您不能将库复制到您的项目目录中,您需要告诉Visual Studio将其链接。
上一篇: How can I include <sodium.h> correctly in Visual Studio?