C - 在Ubuntu v12.10上编译OpenSSL头文件的问题

时间:2013-02-15 10:24:18

标签: c ubuntu compiler-errors openssl

我正在尝试在Ubuntu v12.10 32位上的Eclipse CDT(v1.2.0.201212170456)中编译以下C代码。

#include <openssl/bio.h>

int main(void)
{
    return 0;
}

我的编译器是arm-none-linux-gnueabi-gcc(Sourcery G ++ Lite 2010q1-202)4.4.1。我已经设置了openssl文件夹的路径,该文件夹位于/ usr / include中。当我在#include行上按F3时,Eclipse CDT会打开bio.h文件。当我编译代码时,我得到大约500个错误,如下所示:

expected ';' before 'int' line 301, external location: /usr/include/openssl/bio.h

int (*bwrite)(BIO *, const char *, int);&lt; - bio.h中的第300行

int (*bread)(BIO *, char *, int);&lt; - bio.h的第301行

expected ';', ',' or ')' before '*' token line 234, external location: /usr/include/openssl/bio.h

void BIO_set_flags(BIO *b, int flags);&lt; - bio.h中的第233行

int BIO_test_flags(const BIO *b, int flags);&lt; - 生物线中的第234行

我安装了libssl和libssl-dev。我真的不知道可能是什么原因。请帮忙!

从CDT的控制台输出:

  

arm-none-linux-gnueabi-gcc -I / usr / include -O0 -g3 -Wall -c -fmessage-length = 0 -v -MMD -MP -MF“main.d”-MT“main。 d“-o”main.o“”../ main.c“

1 个答案:

答案 0 :(得分:0)

回答我自己的问题。

我能够按照SB.this SO thread提供的说明解决问题。

由于我静态链接到OpenSSL,我已将以下文件复制到Eclipse CDT中的C项目中。

  • libcrypto.a
  • libssl.a