gpt4 book ai didi

c - GCC 包含错误 OpenSSL

转载 作者:太空宇宙 更新时间:2023-11-03 23:27:55 25 4
gpt4 key购买 nike

我正在尝试在我的应用程序中使用 openssl 加密库,但是当我包含 OpenSSL header 时我遇到了一些问题。

首先,我尝试重用这段代码: http://wiki.openssl.org/index.php/EVP_Symmetric_Encryption_and_Decryption

在我的 crypto_file 中我有这段代码:

#include <openssl/conf.h>
#include <openssl/evp.h>
#include <openssl/err.h>

#include "global.h"
#include "api_openssl.h"

void init_ctx();

int private_encrypt(byte *plaintext, int plaintex_len, byte *key, byte* iv,byte *cipher)
{
//TODO
return 0;
}
int private_decrypt(byte *ciphertext, int ciphertex_len, byte *key, byte* iv,byte *plain)
{
//TODO
return 0;
}

void private_init()
{
ERR_load_crypto_strings();
OpenSSL_add_all_algorithms();
OPENSSL_config(NULL);
}

void private_clean_up()
{
EVP_cleanup();
ERR_free_strings();
}

当我不想通过这个命令编译时:

gcc  -std=c99 -Wall -g -c -I inc -DSSL -o obj/api_openssl.o -c src/api_openssl.c

我有这样的结果:

<command-line>:0:5: error: expected identifier or ‘(’ before numeric constant

供您引用:

 cat /etc/*-release
->DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=16
DISTRIB_CODENAME=petra
DISTRIB_DESCRIPTION="Linux Mint 16 Petra"
NAME="Ubuntu"
VERSION="13.10, Saucy Salamander"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 13.10"
VERSION_ID="13.10"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"

我已经安装了默认存储库的 libssl-dev 包

我的解决方案用完了。

谢谢你帮助我!

最佳答案

您看到的错误来自 -DSSL gcc 选项。将其更改为 -D_SSL 或其他任何内容都可以防止错误。我不确定,但这让我相信 SSL 要么在某处保留,要么与某些东西冲突。也许其他人可以评论这是为什么。

也就是说,SSL 宏在哪里使用?你能改变它吗?

关于c - GCC 包含错误 OpenSSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22538541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com