首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法交叉编译(Windows)连接ssl库的程序

无法交叉编译(Windows)连接ssl库的程序
EN

Stack Overflow用户
提问于 2012-03-12 15:49:36
回答 2查看 1.6K关注 0票数 0

我有一个连接ssl库(md5.h)的C程序:

代码语言:javascript
复制
#if defined(__APPLE__)
#  define COMMON_DIGEST_FOR_OPENSSL
#  include <CommonCrypto/CommonDigest.h>
#  define SHA1 CC_SHA1
#else
#  include <openssl/md5.h>
#endif

在Linux和Mac上,每件事情都能很好地工作,用这个命令行编译:

代码语言:javascript
复制
gcc program.c -o prog -lssl

现在我想为windows编译它,所以我已经在我的Debian上安装了MinGw,我正在尝试将编译与以下命令行交叉:

代码语言:javascript
复制
i586-mingw32msvc-gcc program.c -o program.exe -lssl

但是我得到了这个编译错误:

错误: openssl/md5.h:没有这样的文件或目录

为什么?我该如何解决这个问题?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-03-12 15:53:58

您需要为Windows构建OpenSSL,编译器可以在那里找到它。最简单的方法是从源代码构建,并将其安装到混合编译器可以找到的前缀中(或者将包含路径和库路径传递给构建系统)。

OpenSSL是一个第三方库,所以它不是mingw包的一部分。

票数 2
EN

Stack Overflow用户

发布于 2012-03-12 15:59:58

检查makefile.m32文件中的所有路径,它们肯定有问题。

而且,您必须编译它,而不是在cmd中,而是在mingw-cmd中,它与mingw包一起安装。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9670280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档