C++ - 对 "sodium_init" 的未定义引用
C++ - Undefined reference to "sodium_init"
我正在尝试使用 libsodium 制作测试应用程序,但我收到错误消息:
main.cpp:6: undefined reference to `sodium_init'
我运行以下命令以root用户身份安装。
$ ./configure
$ make && make check
$ make install
这是有问题的代码。
#include <stdio.h>
#include <sodium.h>
int main(int argc, char **argv)
{
if (sodium_init() == -1)
{
return 1;
}
printf("libsodium had no issues!\n");
return 0;
}
我正在使用 CodeLite 作为我的 IDE,我的 C++ 编译器选项如下:
-g;-O0;-Wall;-lsodium
选项是默认的,我在列表中添加了 -lsodium
。
尝试使用以下命令直接从终端编译 main.cpp
g++ -lsodium main.cpp
会引发相同的错误。
有人可以帮我解决我的问题吗?
用于链接的库是按顺序搜索的,因此您需要将库放在之后您的本地翻译单元:
g++ main.cpp -lsodium
在您的 IDE 中,确保将 -lsodium
添加为 链接器 参数。
我正在尝试使用 libsodium 制作测试应用程序,但我收到错误消息:
main.cpp:6: undefined reference to `sodium_init'
我运行以下命令以root用户身份安装。
$ ./configure
$ make && make check
$ make install
这是有问题的代码。
#include <stdio.h>
#include <sodium.h>
int main(int argc, char **argv)
{
if (sodium_init() == -1)
{
return 1;
}
printf("libsodium had no issues!\n");
return 0;
}
我正在使用 CodeLite 作为我的 IDE,我的 C++ 编译器选项如下:
-g;-O0;-Wall;-lsodium
选项是默认的,我在列表中添加了 -lsodium
。
尝试使用以下命令直接从终端编译 main.cpp
g++ -lsodium main.cpp
会引发相同的错误。
有人可以帮我解决我的问题吗?
用于链接的库是按顺序搜索的,因此您需要将库放在之后您的本地翻译单元:
g++ main.cpp -lsodium
在您的 IDE 中,确保将 -lsodium
添加为 链接器 参数。