【发布时间】:2011-09-27 20:20:12
【问题描述】:
我正在尝试使用 Cygwin 和 Windows 将我的 c++ 程序与 libcrypto 库链接。
我的 .cc 文件中有这个
#include <openssl/dh.h>
我在 usr/include/openssl 中有头文件 dh.h
而且我在 /usr/lib/ 中有所需的文件(libeay32.dll 和 ssleay32.dll),但是,当我构建(使用 python 构建工具 node-waf)时,我收到诸如 undefined reference to _DH_new 之类的错误
我在构建脚本的 cxxflags 部分尝试了各种方法,现在看起来像这样:
ppp.cxxflags = ["-g", "-D_FILE_OFFSET_BITS=64", "-D_LARGEFILE_SOURCE", "-Wall", "-L/usr/lib", "-lssl","-llibeay32","-lssleay32"]
【问题讨论】:
-
It looks like a
libcrypto.ais available -- 这对你的项目来说足够了吗? -
我相信,我有那个文件。但我正在使用构建系统“waf”,我不确定如何告诉链接器使用 libcrypto.a
-
基本上我尝试使用 libcrypto.a,但没有任何运气(我不知道为什么),现在我正在尝试另一种方法。但是,如果您可以帮助静态链接 libcrypto.a,我愿意回到这种方法。
-
cygwin 做 .dll,而不是 .so。你有一些不是为 cygwin 构建的。
-
啊哈。你是说我不能使用 libcrypto.a 或 licrypto.so 因为它们都不适合 Cygwin?我一直在怀疑这个,你能确认一下吗?