【问题标题】:crypto library not found in MinGW在 MinGW 中找不到加密库
【发布时间】:2014-01-24 15:18:22
【问题描述】:

我有一个C 代码,它使用openssl 和crypto 进行AES 加密。
它在linux中编译没有问题。
但在 Windows 和 MinGW 中,它给出:

c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot find -lcrypto
collect2.exe: error: ld returned 1 exit status

我正在使用这个编译:

gcc code.c -lcrypto -Ic:\OpenSSL-Win32\include -Lc:\mingw\msys\1.0\local\lib

有什么问题?

【问题讨论】:

  • 与您的问题无关,但我认为最好在 mingw 程序中使用“/”路径分隔符。避免意外问题。

标签: c windows openssl mingw


【解决方案1】:

这有点奇怪:

gcc code.c -lcrypto -Ic:\OpenSSL-Win32\include -Lc:\mingw\msys\1.0\local\lib

试试:

gcc code.c -Ic:\OpenSSL-Win32\include -Lc:\mingw\msys\1.0\local\lib -lcrypto

OpenSSL 默认安装到/usr/local/ssl,这意味着你的库通常是/usr/local/ssl/lib。你改了吗?我不确定在 MinGW 下这意味着什么。

也许您可以提供c:\mingw\msys\1.0\local\lib 中的ls。如果该库不存在,请尝试使用find c:\mingw\msys\1.0\local -iname libcrypto.a(或libcrypto.so)找到它。

【讨论】:

  • 谢谢;这是c:\mingw\msys\1.0\local\lib 文件夹问题!将其更改为 `C:\MinGW\msys\1.0\lib` 已修复问题
猜你喜欢
  • 2012-02-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多