winelib的优势?

时间:2009-12-20 22:20:45

标签: c++ linux mingw wine winelib

使用winelib为Linux用户编译我的Windows应用程序有什么好处吗?为什么不给他们.exe并让他们用Wine运行它?似乎就像没有收获的额外工作一样。

6 个答案:

答案 0 :(得分:8)

引用Chapter 1. Winelib Introduction - 1.1. What is Winelib?

  

通过重新编译你获得的收益   应用Winelib是   能够调用Unix API,   直接从您的Windows源   码。
这样可以更好   与Unix环境集成   比运行一个允许的   未修改的Windows应用程序正在运行   在葡萄酒。
另一个好处是   Winelib应用程序可以相对   很容易在非英特尔上重新编译   建筑并在那里没有   需要缓慢的软件仿真   处理器。

答案 1 :(得分:8)

您可能希望阅读使用Winelib的Advantages and Disadvantages

答案 2 :(得分:4)

请参阅this

  

Anon:我认为这意味着所有winelib移植的应用程序都不是真正的Linux二进制文件 - 但是在win32二进制文件和Linux二进制文件之间有一些>半分?移植>(使用winelib)而不是在wine下运行win32二进制文件的优势是什么?

     Dimi Paun:它们是真正的Linux二进制文件(ELF格式),但在启动之前需要进行一些设置(对于> Windows compat)。但是,运行Win32(PE)可执行文件取而代之的是>真正的可能性,相同的速度等。但是有一个Winelib端口可以让你更好地>与Unix env集成,这可能是你想要的'真实'Linux app。

答案 3 :(得分:2)

一个很好的理由是它可能会为Wine中的回归提供一些保险。如果您使用Winelib的A版测试代码并将该版本与您的程序静态链接,那么较新版本的Wine中的回归不会让您失望。

答案 4 :(得分:1)

谷歌上搜索该主题似乎表明,编译反对winelib是一种通过在编译中提出证据问题来改善葡萄酒的方法,如果葡萄酒(因此winelib)是一个完美的win32 api实现替代品,那么这不应该出现。 对于您自己的应用程序,它是一种检查与葡萄酒的兼容性的方法。

答案 5 :(得分:1)

我认为将应用程序划分为独立于操作系统的.exe和几个特定于操作系统的.dll,.dll.so和.dll.dylib库是有意义的。这些动态库可以从单个exe中访问Mac OS X和Linux API。