我有windows动态链接库,我想从Linux环境访问它。我没有该库的源代码,所以我无法构建.so文件。
有没有办法使用Winelib
或任何其他库或工具将库文件转换为.so文件,以便我可以调用该库中定义的函数?
答案 0 :(得分:2)
没有简单的方法,因为DLL本身无法在Linux环境中运行。它可能会在运行时依赖22|kg
user32.dll
和朋友,因此您也必须提供这些文件。
您可以使用winelib,但它并不只是将msvcrt.dll
转换为.dll
。您必须将想要调用DLL的整个项目链接到winelib,并在运行时将DLL本身包含在您的应用程序中。如果您尝试将Windows应用程序移植到Linux,winelib将能够为您转换makefile,但它对于复杂项目来说远非自动化。