希望这仍然是StackOverflow的主题。
我所有的开发都是在Linux机器上进行的,但是代码可以在Linux和Windows机器上运行。
我想使用Linux来编译代码,我有mingw-32和mingw-w64。
但是我想把生成的可执行文件打包到一个很好的MSI安装文件中。是否可以使用Linux中的实用程序或在Wine下运行?
谢谢!
发布于 2012-07-14 13:50:53
您可以组合使用Wine、Mono和WiX在Linux上创建.msi包。
对于openSUSE,我已经创建了一个名为wixwine的包装包,它提供了Windows Installer XML (WiX)工具集中的“candle”和“light”命令,可以在Linux上使用。
你可以找到我的wixwine包here
发布于 2012-12-07 01:00:54
我刚刚发布了msitools的v0.01,这是一个用于检查和创建Windows安装程序文件的实用程序集合。它基于Wine代码,但移植到了POSIX。
你可以在http://bonzini.fedorapeople.org/上找到源代码和二进制包-不幸的是,你需要从git构建libgsf,因为我发现了一个bug,到目前为止还没有发布的版本有修复。链接的页面包含带有修复的Fedora RPM。
$ msiinfo streams ~/download/Firefox-16.0.2-it.msi
Binary.New
Binary.Up
Binary.info
Binary.dlgbmp
Binary.CustomBin
Binary.bannrbmp
Binary.completi
Binary.custicon
Binary.exclamic
Binary.insticon
Binary.removico
Binary.repairic
_MAKEMSI_Cabs.MM01.cab
Binary.BannerGraphic.BMP
Icon.firefox.16.0.2.0.ico.exe
DigitalSignature
SummaryInformation
$ msiinfo extract ~/download/Firefox-16.0.2-it.msi _MAKEMSI_Cabs.MM01.cab > firefox.cab
$ cabextract -l firefox.cab
Viewing cabinet: firefox.cab
File size | Date Time | Name
-----------+---------------------+-------------
917984 | 24.10.2012 12:50:38 | firefox.exe
18912 | 24.10.2012 12:50:38 | AccessibleMarshal.dll有一个配套的实用程序msibuild来构建MSI。它是非常低级的,但您可以结合使用这两个工具来对您在Windows上已做的MSI进行小的更改。
更新:现在托管在https://live.gnome.org/msitools上,它还有一个支持WiX XML子集的工具(wixl)。需要libgsf 1.14.25或更高版本。Fedora 18和更新的有它的包装。
https://stackoverflow.com/questions/10240484
复制相似问题