将库静态链接到动态库(dll)

时间:2014-08-22 21:12:46

标签: c windows dll lua openssl

今天我花了在Windows上使用LuaSec绑定库来构建OpenSSL,以便在Windows上使用Lua。 (使用MinGW / GCC,而不是MS编译器)

Lua使用自己的路径搜索工具来定位luasec绑定库,但luasec只是尝试打开openssl库。这意味着luasec库整齐地隐藏在Lua包生态系统中,但是openssl库需要位于进程可执行文件旁边,在这种情况下是lua.exe。我最不喜欢的是lua可执行文件在系统路径中,但现在也是openssl可执行文件...

所以问题;当我构建LuaSec绑定库时,它会链接Lua库和openssl库。现在我想将openssl库静态链接到它。但不是lua库。

结果将是一个可由Lua动态加载的单个luasec dll(包括openssl代码)。

这甚至可能吗?如果是这样,关于如何实现这一点的任何指针?

THX!

PS。我看到了一些打包工具,但是它们将整个应用程序打包成一个可执行文件,在这种情况下我希望结果是一个dll。

0 个答案:

没有答案