c - 未定义对 `SHA1' 的引用

标签 c linux gcc

我尝试在 Linux 上编译一个库。这个库使用 <openssl/sha.h>图书馆。我已将此库包含在源文件中。之后,我使用标志 -lssl和标志 -lcrypto编译这个项目。所以这是我的命令:

gcc -g -Wall -lssl -lcrypto -o bt_client file_a.c file_b.c

但是我遇到错误:

undefined reference to `SHA1' at line 130

第 130 行的代码是:

SHA1((unsigned char *) null_padded_name, 20, (unsigned char *)name_sha1);

我错过了什么吗?请纠正我。谢谢:)

最佳答案

试试这个:

gcc -g -Wall -o bt_client file_a.c file_b.c -lssl -lcrypto

如果您确定 SHA1 符号存在于 libssl.solibcrypto.so 中。

关于c - 未定义对 `SHA1' 的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22988320/

相关文章:

c - 格式化输出列表

c - 从另一个头文件获取静态结构成员的地址

c - 4 个子进程之间的管道通信仅在第一次有效

c - 多线程独占访问文件

linux - 如何从远程位置打开系统端口(WIn、Linux、Mac)?

java - 打开 Eclipse 时无法加载 JavaHL 库

gcc - TDM 在 "TDM-gcc"中代表什么?

c - 使用一维数组计算矩阵值

c - gcc 如何将 sum 从 1 到 100 优化为 5050

c - 如何获得有关分配给但不再使用的变量的警告?